我有一个带有不同片段的浏览器,其中一个有一个视频视图。如果我在播放视频时切换页面,那么即使我在不同的页面上,它也会继续播放。我尝试像这样为 ViewPager 实现 OnPageChangeListener:
viewpager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
if(position!=mAdapter.getCount()-1){
MultimediaFragment frag = (MultimediaFragment)mAdapter.getItem(position+1);
frag.onPageIsChanged();
}
if(position != 0){
MultimediaFragment frag = (MultimediaFragment)mAdapter.getItem(position-1);
frag.onPageIsChanged();
}
}
onPageIsChanged() 是我自己的一种方法,它试图告诉我的 videoview 属性停止和隐藏控件:
public void onPageIsChanged() {
if(mVideoView!=null){
if(mVideoView.isPlaying()){
mVideoView.stopPlayback();
}
mMedia.hide();
}
}
问题是 mVideoView 始终为空,即使它在后台播放也是如此。这个视频视图是在片段的 OnCreateView 方法上创建的,但在片段被销毁之前,它不应该保持设置为我的 mVideoView 字段吗?