-1
我有一个viewpager
与VideoView
。试图了解onPageScrolled
所以我想当我滚动当前页面的视频暂停。这东西我在onPageScrolled
做但我遇到了一个问题,因为这种方法被称为多次。
我已经搜索了android官方文档,但我还没有找到任何东西。
viewPager.addOnPageChangeListener(新ViewPager.OnPageChangeListener(){
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
VideoView videoView = (VideoView) viewPager.findViewWithTag("videoView"+position);
if(videoView!=null){
Log.d(TAG,"onPageScrolled "+position);
videoView.pause();
}
}
@Override
public void onPageSelected(int position) {
//Toast.makeText(getApplicationContext(),"onPageSelected "+position,Toast.LENGTH_SHORT).show();
View view = (View) viewPager.findViewWithTag("view" + position);
if(view!=null) {
//ImageView thumbnail = (ImageView) view.findViewById(R.id.fullScreenVideoThumbnail);
//thumbnail.setVisibility(View.GONE);
Log.d(TAG,"onPageSelected Position: "+position);
VideoView videoView = (VideoView) view.findViewById(R.id.fullScreenVideoFullVideo);
videoView.bringToFront();
videoView.start();
}
}
@Override
public void onPageScrollStateChanged(int state) {
//Toast.makeText(getApplicationContext(),"onPageScrollStateChanged",Toast.LENGTH_SHORT).show();
}
});
谢谢。你给了我一个主意。而不是你说我使用的** onPageSelected位置**保存为变量,然后在** onPageScrolled ** – kamboj
内比较它是否需要视频在滚动上暂停?如果每次使用onPageSelected选择页面,它都会暂停视频。但我想我可能误解了你的帖子,下次会更清楚。无论如何,你的欢迎 –