首页 > 解决方案 > 我如何将 youtube 播放器视频视图添加到布局中?

问题描述

我想将 youtube 播放器视频视图添加到布局中。然后我想将此布局添加到我的上下文中。但是我有一个错误。

<com.google.android.youtube.player.YouTubePlayerView
            android:id="@+id/yView"
            android:layout_width="250dp"
            android:layout_height="250dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"></com.google.android.youtube.player.YouTubePlayerView>

这是我的布局的 XML 部分

这也是我的活动部分

 var v : View = LayoutInflater.from(applicationContext).inflate(R.layout.yview, null)
        var y : YouTubePlayerView = v.findViewById(R.id.yView)


编辑:这是错误“错误膨胀类 com.google.android.youtube.player.YouTubePlayerView”

标签: androidkotlinandroid-layoutyoutubeyoutube-api

解决方案


按照这些步骤,它对我有用!

步骤 1) 在您的 XML 文件中添加此代码:

 <com.google.android.youtube.player.YouTubePlayerView
        android:id="@+id/youtubePlayer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

步骤 2) 扩展YouTubeBaseActivity()您的活动课程,您的课程如下所示:

class YoutubePlayerActivity : YouTubeBaseActivity(), YouTubePlayer.OnInitializedListener {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    videoId = "VIDEO ID THAT YOU WANT TO PLAY"
    binding.youtubePlayer.initialize("YOUR YOUTUBE API KEY",this)
}

override fun onInitializationSuccess(p0: YouTubePlayer.Provider?, p1: YouTubePlayer?, p2: Boolean) {
    if (!p2) {
        p1?.cueVideo(videoId)
    }
}

override fun onInitializationFailure(p0: YouTubePlayer.Provider?, p1: YouTubeInitializationResult?) {}
}

它完成了!


推荐阅读