【发布时间】:2017-04-30 20:23:30
【问题描述】:
我正在开发一个应用程序,其中大部分工作都是使用 Fragments 完成的。在一个片段中,我必须展示一个包含 Youtube 播放器的回收视图。但 Youtube Player 只出现在回收视图的第一行。我有这个 recycleView 适配器的代码。
public static class VideoViewHolder extends RecyclerView.ViewHolder {
public FrameLayout ViewVideo;
ViewVideo = (FrameLayout) itemView.findViewById(R.id.MainVideo);
}
关于绑定方法
public void onBindViewHolder(VideoViewHolder holder, final int position) {
youTubePlayerFragment = new YouTubePlayerSupportFragment();
FragmentTransaction transaction = VideoPage.getChildFragment().beginTransaction();
transaction.replace(holder.ViewVideo.getId(), youTubePlayerFragment).commit();
youTubePlayerFragment.initialize("****************************", new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
if (!b) {
youTubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT);
youTubePlayer.loadVideo(VideoAvaliable[position]);
// youTubePlayer.play();
}
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
String errorMessage = youTubeInitializationResult.toString();
Toast.makeText(context, errorMessage, Toast.LENGTH_LONG).show();
}
});
在我的布局中
<FrameLayout
android:id="@+id/MainVideo"
android:layout_width="match_parent"
android:layout_height="200dp"
android:scaleType="centerCrop"
android:name="com.google.android.youtube.player.YouTubePlayerSupportFragment"
android:layout_weight="1"/>
【问题讨论】:
标签: android android-fragments youtube-api android-recyclerview android-youtube-api