如何从MainActivity访问方法并完成图片活动
例如,我想从MainActivity:
暂停视频播放器的pip模式VideoPlayerActivity().pauseVideo()
VideoPlayerActivity (Pip):
fun pauseVideo() {
player?.pause()
}
但是不工作
我以为视频会停止,但什么也没发生
当您尝试调用VideoPlayerActivity().pauseVideo()
时,您正在创建一个新的VideoPlayerActivity
类,它将调用新类pauseVideo()
而不是原来的显示类pauseVideo()
。
一个建议是创建一个单独的Singleton类,这样你就可以从任何Activity
访问Player
函数。
class PlayerHelper {
companion object {
private var instance : PlayerHelper? = null
// Define your necessary Player tool
fun getInstance(): PlayerHelper {
if (instance == null) {
instance = PlayerHelper()
}
return instance!!
}
}
fun start() {
// Implement to start your player
Log.i("PlayerHelper", "start:")
}
fun pause() {
// Implement to pause your player
Log.i("PlayerHelper", "pause:")
}
}
你可以在任何活动中调用pause()
,如:
PlayerHelper.getInstance().pause()