在我的项目中,我使用youtube播放器。
我的项目是购物应用程序,我在ViewPager中设置了youtube播放器。 这是完美的。没问题。但是,我的客户想要添加圆圈指示器。
我不明白,它有问题。 我在XML文件中添加了指标,YouTube播放器仅播放一秒钟。我单击播放,播放一秒钟,然后再次停止。发生什么事了?
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/btnMusicPlayer"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_gravity="bottom|right"
android:layout_margin="15dp"
android:background="@drawable/btn_music" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="260dp">
<android.support.v4.view.ViewPager
android:id="@+id/viewPager_main"
android:layout_width="match_parent"
android:layout_height="260dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true" />
<me.relex.circleindicator.CircleIndicator
android:id="@+id/indicators"
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_alignParentBottom="true" />
</RelativeLayout>
</FrameLayout>
那是我的活动xml代码。 我用较低的代码将较低的xml插入ViewPager。(ViewPager适配器)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<view
android:id="@+id/video_viewpager_childvideo"
class="com.google.android.youtube.player.YouTubePlayerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"/>
</RelativeLayout>
它是ViewPager适配器。
view= inflater.inflate(R.layout.layout_viewpager_child_video, null);
final YouTubePlayerView video = (YouTubePlayerView)
view.findViewById(R.id.video_viewpager_childvideo);
String fullurl = mediaUrls.get(position).getUrl();
YouTubeHelper youTubeHelper = new YouTubeHelper();
final String videoUrl = youTubeHelper.extractVideoIdFromUrl(fullurl);
listener = new YouTubePlayer.OnInitializedListener(){
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider,
YouTubePlayer youTubePlayer, boolean b) {
youTubePlayerInstance = youTubePlayer;
youTubePlayer.cueVideo(videoUrl);
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider,
YouTubeInitializationResult youTubeInitializationResult) {
}
};
video.initialize(youTubeApiKey, listener);
如果我删除me.relex.circleindicator.CircleIndicator,就可以正常工作。 如果只是改变两个视图的位置,它也可以工作。
me.relex.circleindicator.CircleIndicator刚刚尝试。我尝试4种指示剂,任何人都有问题。 一次我只为一些阴影添加“视图”,它也有问题。
这个。
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/btnMusicPlayer"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_gravity="bottom|right"
android:layout_margin="15dp"
android:background="@drawable/btn_music"
android:onClick="onClickMusic" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="260dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true" />
</RelativeLayout>
<View
android:layout_width="match_parent"
android:layout_height="4dp"
android:layout_gravity="top"
android:layout_alignParentTop="true"
android:background="@drawable/shadow_down" />
</FrameLayout>
我不明白,为什么btnMusicPlayer不会出错? 我认为YouTube播放器在某些方面有问题。是吗?
请帮助我!
答案 0 :(得分:2)
我认为this是您想要的。它将允许您对API使用自定义UI。这是一个开放源代码库,旨在替代官方的YouTube Android Player API。
希望对您有帮助。
答案 1 :(得分:1)
如果您阅读了日志记录,就会发现您的视图无法与YouTubePlayer重叠,这就是它停止的原因。
您必须选择: