YouTubeBaseActivityとAppCompatActvityの両方を使用する方法があるかどうかを知りたいと思います。AndroidはYoutubeプレーヤーのビデオとアプリを使用しています
主なアイデアは、dialogFragment内でYouTube動画を再生することです。
YouTubeBaseActivityとAppCompatActvityの両方を使用する方法があるかどうかを知りたいと思います。AndroidはYoutubeプレーヤーのビデオとアプリを使用しています
主なアイデアは、dialogFragment内でYouTube動画を再生することです。
最後に、埋め込まれたYouTube動画をダイアログで再生する方法を見つけました。
ダイアログのカスタムレイアウトを作成し、DialogsFragmentを拡張するクラスでそれを膨張させるだけです。
このカスタムレイアウトでは、youtubefragmentコンテナになるframelayoutを追加します。 DialogでYouTubePlayerインターフェイスを実装することを忘れないでください。ほとんど完了です。
最後のトリックでは、あなたのコンテナにyoutube playerフラグメントを追加するトランザクションのsupportFragmentManagerの代わりにgetChildFragmentManagerを使用します。ここで
は、あなたのダイアログクラスのためのいくつかのコードです:public class AddMarkerFragment extends DialogFragment implements YouTubePlayer.OnInitializedListener{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
Log.d("ADDMARKERLIFECYCLE","ONCREATE");
final View view = inflater.inflate(R.layout.fragment_add_marker, container, false);
prepareYoutubePlayer(view);
}
private void prepareYoutubePlayer(View view) {
youtubePlayerFragment = (YouTubePlayerSupportFragment)
getActivity().getSupportFragmentManager().findFragmentById(R.id.youtube_fragment);
if (youtubePlayerFragment == null) {
youtubePlayerFragment = YouTubePlayerSupportFragment.newInstance();
getChildFragmentManager().beginTransaction().add(R.id.youtube_fragment, youtubePlayerFragment).commit();
}
youtubePlayerFragment.initialize(YoutubeConnector.KEY, this);
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean wasRestored) {
if (!wasRestored) {
youTubePlayer.loadVideo(footage.getYoutubeID());
this.youtubePlayer=youTubePlayer;
/* youTubePlayer.setShowFullscreenButton(false);
youTubePlayer.*/
youTubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.MINIMAL);
}
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
Log.e(CreateExperienceActivity.class.getSimpleName(), "Ruh Roh!");
}
参照してユーチューブプレーヤーを維持する独自のcontroll実装するためにフルに活用することができ
がそれを願っています(遊びの/ etcなどなどを一時停止)いくつかの体を助けるでしょう。
よろしくお願いします。
少なくとも、YouTubeBaseActivity
を拡張するのではなく、通常は必ずしも必要ではありません。あなたのアクティビティをAppCompatActivity
に広げ、アクティビティにYouTubePlayerSupportFragment
を使用することをお勧めします。ストレートdocsから
:
YouTubePlayerViewを含む断片。このフラグメントを使用するのは です。あなたのアクティビティは、 の場合、YouTubePlayerViewを直接使用して のように、ライブラリによって提供されたアクティビティを拡張する必要はないため、YouTube動画を再生するのが好ましい方法です。
ダイアログでYouTube動画を再生することは難しいかもしれません。最も良い方法は、ダイアログの外観を模倣するために(まだアクティビティである間に)ダイアログテーマ/透明な背景を持つアクティビティを使用することです。