项目中用到了一个viewpager中放入几个Fragment,实际在切换的时候这些Fragment已经加载好了,其中有个Fragment中包含一个WebView,这个webview可以在线播放视频,

如果用户还没切换到这个Fragment的时候视频就播放了,是不是很讨厌,还有在用户切换到其他Fragment的时候视频播放应该暂停或者停止。


首先想到了Fragment的onPause()方法,但是实际并不理想,我切换到第三个Fragment它才暂停,无奈百度了一下,没找到解决方法,一个偶然机会看到Fragment竟然有个setUserVisibleHint()方法,这个方法在onCreateView()之前执行,意思就是告诉系统UI是否可见。这里传递的参数isVisibleToUser就可以判断这个Fragmet是否可见,这和onResume和onPause方法惊人的相似,既然onPause在ViewPager中不好用,就用这个替代吧:


 @Override
	    public void setUserVisibleHint(boolean isVisibleToUser) {
	        super.setUserVisibleHint(isVisibleToUser);
	        if (isVisibleToUser) {
	            //相当于Fragment的onResume
	        } else {
	            //相当于Fragment的onPause
	        	WenboLog.info("暂停 切换到其他页面");
	        	if(null!=webview){
	        		webview.reload();
	        	}
	    		
	        }
	    }

PS.前面说到切换到其他Fragment页面时要暂停当前页面的视频播放,但是试过了webview的onPause();方法,一样不好用,后来百度找到一个一了百了的方法
webview.reload();

页面重新加载 视频就暂停播放了

更多相关文章

  1. 在Skobbler中完成导航时,确定“街边”的最佳方法是什么?
  2. 【Camera】Android平台Camera实时滤镜实现方法
  3. 通过ViewPager实现类似微信的页面切换(Fragment篇)
  4. Android-SDK-Manager 不能更新最有效的解决方法
  5. [置顶] android MultiDex multidex原理下超出方法数的限
  6. android开发中如何从当前页面返回上一页面
  7. android 关于读取SD卡或者U盘的一些方法
  8. 【Android笔记】Activity涉及界面全屏的方法
  9. Android中WebView实现Javascript调用Java类方法

随机推荐

  1. 用angularjs写android应用连手机调试的步
  2. 【Android手机游戏】贪吃蛇(1)
  3. 安卓中的shape
  4. Android Studio 学习之 Android SDK快速
  5. AES加解密在Android(安卓)4.2上的Encrypt
  6. Android Matrix详解
  7. Android(安卓)OpenGL射线拾取&手势旋转(二
  8. Android(安卓)基础Action
  9. android实现文件下载功能
  10. Android布局之LinearLayout与RelativeLay