android - Kotlin 不允许多重继承。我怎样才能做等效的事情?
问题描述
class MainActivity : YouTubeBaseActivity() ,AppCompatActivity() (error:multiple inheritance) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// attaching layout xml
setContentView(R.layout.activity_main)
val adapter = PagerAdapter(supportFragmentManager)
val pager = findViewById<View>(R.id.pager) as ViewPager
pager.adapter = adapter
// Initializing YouTube player view
val youTubePlayerView = findViewById(R.id.youtube_player_view) as YouTubePlayerView
youTubePlayerView.initialize("YOUR API KEY",
object : YouTubePlayer.OnInitializedListener {
override fun onInitializationSuccess(provider: YouTubePlayer.Provider,
youTubePlayer: YouTubePlayer, b: Boolean) {
// do any work here to cue video, play video, etc.
youTubePlayer.cueVideo("5xVh-7ywKpE")
}
override fun onInitializationFailure(provider: YouTubePlayer.Provider,
youTubeInitializationResult: YouTubeInitializationResult) {
}
})
}
我在这个应用程序中使用YoutubeView
with 。ViewPager
我收到一个错误,因为我无法使用AppCompatActivity().supporFragmentManager(error)
.
Kotlin 不支持多重继承。我该怎么做?
解决方案
您不应该在 Avtivity 中扩展 FragmentManager。Activity 已经包含 fragmentManager 的实例,所以你可以像getFragmentManager()
在 Kotlin 中一样获得它fragmentManager
推荐阅读
- php - 遇到未捕获的异常选项,错误,意外的 '`',期待 ',' 或 ')' - 类型:使用 CodeIgniter Web 框架的 ParserError
- git - 我把git弄得一团糟,有人能解释一下我做错了什么吗?
- apache-spark-sql - 遍历火花数据框并为每行连接两列
- php - Laravel - 我无法登录用户
- gradle - 无法在 mac 中设置 GRADLE_HOME
- python - 有什么方法可以在 python 中阻止 sql 查询?
- wordpress - 如何在 iMacros 中进行 while 循环?
- report - 根据odoo12中的状态在打印菜单中隐藏报告
- python - 基于 3 个条件的 Python pandas 数据帧回填
- android - android.database.sqlite.SQLiteConstraintException:唯一约束失败