您的位置:首页 > 移动开发

Fragment Webview 返回键监听

2016-01-21 11:56 274 查看
之前因为Fragment,不能监听返回键,所以把Fragment返回监听,放在了FragmentActivity上。

FragmentActivity.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
if (fragment instanceof RechargeSuccessFragment
|| fragment instanceof HuifuWithdrawalSuccessFragment) {
finish();
} else {
popBackStack();
}
return true;
}
return super.onKeyDown(keyCode, event);
}


后来又加上要监听webview返回,对之前代码不太满意。后修改如下:

Fragment.java

mWebView.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
if (mWebView != null && mWebView.canGoBack()) {
mWebView.goBack();
} else {
mActivity.popBackStack();
}
return true;
}
return  false;
}
});


搞定!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: