轻松实现Fragment监听返回键,回退ViewPager双击退出
2017-11-05 18:46
399 查看
实现方式是在Activity设置回调接口,Fragment实现接口。1.Activity设置接口private ShoppingCanGoBackListent shoppingCanGoBackListent;public interface ShoppingCanGoBackListent {boolean shoppingCanGoBack();}public void setShoppingCanGoBackListent(ShoppingCanGoBackListent shoppingCanGoBackListent) {this.shoppingCanGoBackListent = shoppingCanGoBackListent;}2.Fragment实现接口mCompMainActivity.setShoppingCanGoBackListent(new HomeBaseActivity.ShoppingCanGoBackListent() {@Overridepublic boolean shoppingCanGoBack() {if (webView.canGoBack()) {webView.goBack();return true;} else {return false;}}});mCompMainActivity、HomeBaseActivity:寄主Activity对象3.Activity 实现双击退出的逻辑private boolean mIsExit;public void doubleClickExit() {if (mIsExit) {KKApplication application = (KKApplication) getApplication();List<Activity> activityList = application.activityList;if (activityList != null && activityList.size() != 0) {for (Activity activity :activityList) {activity.finish();}}this.finish();} else {Toast.makeText(this, "再按一次返回退出小蜂找事", Toast.LENGTH_SHORT).show();mIsExit = true;new Handler().postDelayed(new Runnable() {@Overridepublic void run() {mIsExit = false;}}, 2000);}}4.Activity 重写onKeyDown监听返回键@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if (shoppingCanGoBackListent != null) {boolean shoppingCanGoBack = shoppingCanGoBackListent.shoppingCanGoBack();if (shoppingCanGoBack) {} else {doubleClickExit();}return true;}doubleClickExit();return true;}return super.onKeyDown(keyCode, event);}完美。。。
相关文章推荐
- 安卓学习笔记---Fragment 里面加webview 监听onback事件(WebView的返回以及整个退出事件)
- Android 在fragment中实现返回键单击提醒 双击退出
- 在fragment中实现返回键单击提醒 双击退出
- Fragment内的webview监听返回键,activity内两次点击退出App之间相互冲突
- activity获取viewpager中fragment里的button按钮,并设置监听怎么实现
- Fragment中加载网页(WebView)监听Back键 ,实现返回上一页的功能
- 【填补改需求的坑】viewpager中的全屏fragment如何监听返回键
- ionic监听android返回键实现“再按一次退出”功能
- 使用FragmentTabHost+TabLayout+ViewPager实现双层嵌套Tab
- 处女男学Android(十一)---Gallery、ViewPager和ViewPager+Fragment实现的Tab导航
- Android 双击返回键退出功能的实现
- (微信框架之雏形)ViewPager+Fragment实现滑动标签页
- Cocos2d-x android使用onKeyDown监听返回键实现二次返回退出
- 知识记录一:ViewPager+Fragment实现tab
- Android10.3-ViewPager+Fragment实现仿微信界面
- 使用ViewPager+Fragment实现选项卡切换效果
- TabLayout+ViewPager+Fragment实现懒加载
- Fragment+ViewPager实现左右滑动