フラグメントでビデオを再生しようとしています。しかし、私はそれを機能させることができません。「YoutubeFailureRecovery」を拡張している場合、次のようになります。
09-06 21:56:40.472: E/AndroidRuntime(4946): 原因: java.lang.IllegalStateException: YouTubePlayerView は、YouTubeBaseActivity をコンテキストとして拡張するアクティビティでのみ作成できます。
これは私の.xmlです:
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/player"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
そして、これはクラスです:
public class YoutubeFragment extends YoutubeFailureRecovery {
YouTubePlayer player;
YouTubePlayerView playerView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle arg2) {
// TODO Auto-generated method stub
return inflater.inflate(R.layout.detailview, container, false);
}
@Override
public void onStart() {
// TODO Auto-generated method stub
super.onStart();
playerView = (YouTubePlayerView)getActivity().findViewById(R.id.player);
playerView.initialize(DataHolder.DEVELOPER_KEY, this);
}
@Override
public void onInitializationSuccess(Provider provider, YouTubePlayer player,
boolean wasRestored) {
// TODO Auto-generated method stub
player.cueVideo("nCgQDjiotG0");
}
@Override
protected Provider getYouTubePlayerProvider() {
// TODO Auto-generated method stub
return playerView;
}
}
public abstract class YoutubeFailureRecovery extends YouTubePlayerSupportFragment implements YouTubePlayer.OnInitializedListener{
どうすればいいのかわからない。Fragment クラスを 'YoutubePlayerSupportFragment' で拡張しようとしましたが、XML でビデオのようなフラグメントを追加しようとしましたが、何も機能していません (膨張エラー)。Fragment で YouTube API を使用した経験のある人がいるでしょうか?