2017-05-16 12 views
0

私はあなたを断片で実装しようとしています。YouTubeを断片化する方法を教えてください。

public class YoutubeFragment extends Fragment { 

private MainActivity myContext; 

private YouTubePlayer YPlayer; 
private String mVideoId = "QdUoieQOZ2s"; 

private static final String YoutubeDeveloperKey = "AIzaSyBVKvfrmSBUaCsj850v2Ks-2FCWiXn_rEw"; 

@Override 
public void onAttach(Activity activity) { 

    if (activity instanceof MainActivity) { 
     myContext = (MainActivity) activity; 
    } 

    super.onAttach(activity); 
} 

@Nullable 
@Override 
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.inflate, container, false); 

    YouTubePlayerSupportFragment youTubePlayerFragment = YouTubePlayerSupportFragment.newInstance(); 

    youTubePlayerFragment.initialize(YoutubeDeveloperKey, 
      new YouTubePlayer.OnInitializedListener() { 
       @Override 
       public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) { 
        if (!b) { 
         YPlayer = youTubePlayer; 
         YPlayer.setShowFullscreenButton(false); 
         YPlayer.cueVideo(mVideoId); 
        } 
       } 

       @Override 
       public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) { 

       } 
      }); 
    FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); 
    transaction.add(R.id.fl_youtube, youTubePlayerFragment).commit(); 
    return rootView; 
} 

}

- :私はその作業を完全にはなくfragment.Refrenceで今回のショー黒い画面での活動であなたのチューブを実装することに成功した前に私は(Integrating youtube to fragment

フラグメントのコードを試してみてくださいActivityクラス: -

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

} 

XMLファイル膨らま: -

<FrameLayout 
    android:id="@+id/fl_youtube" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:visibility="gone"></FrameLayout> 
+0

のYouTubeプレーヤーの代わりに、フレームのレイアウトや他のレイアウトを使用しています。 –

+0

私はframelayoutを使用する前にそれを使用することはできません。私は断片的にyoutubeの完全なコードをアップロードできますか? –

答えて

0

断片コード

private YouTubePlayer mYoutubePlayer; 
private String mVideoId; 

//Call this method after getting mVideoId 
private void initializeYoutubeFragment() { 

    YouTubePlayerSupportFragment youTubePlayerFragment = YouTubePlayerSupportFragment.newInstance(); 

    youTubePlayerFragment.initialize(getString(R.string.youtube_key), new YouTubePlayer.OnInitializedListener() { 

     @Override 
     public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player, boolean wasRestored) { 
      if (!wasRestored) { 
       mYoutubePlayer = player; 
       mYoutubePlayer.setShowFullscreenButton(false); 
       mYoutubePlayer.cueVideo(mVideoId); 
      } 

     } 

     @Override 
     public void onInitializationFailure(YouTubePlayer.Provider arg0, YouTubeInitializationResult arg1) { 


     } 
    }); 
    FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); 
    transaction.add(R.id.fl_youtube, youTubePlayerFragment).commit(); 
} 


@Override 
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { 
    super.onViewCreated(view, savedInstanceState); 
    initializeYoutubeFragment(); 
} 

とXML

....<!--Put his frame layout wherever you need in fragment view xml--> 
<FrameLayout 
     android:id="@+id/fl_youtube" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:visibility="gone"> 
.... 
+0

さんは働きません。 –

+0

どうしたの? – Naveen

+0

私の活動ではxml私は<フレームレイアウトを入れた>私はアクティビティクラスのいずれかの変更を知りたいですか? –

関連する問題