android使用webview时按后退退出的问题
使用webview打包图片站点http://www.gg4493.cn,代码都好了,具体如下
public class MainActivity extends ActionBarActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);WebView webView=new WebView(this);webView.getSettings().setJavaScriptEnabled(true);//支持js webView.loadUrl("http://www.gg4493.cn");//这里的就会加载网址:http://www.gg4493/到webview中webView.setWebViewClient(new MyWebViewClient());}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu);return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId();//noinspection SimplifiableIfStatement if (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);} }
一切貌似很完美,玩游戏,被电脑打败了,点击“更多游戏”去查看其他游戏,然后点返回键,问题来了,不是挖掘技术哪家强,是webview没有后退功能,没法退回首页,而是直接退出,android开发问题还真多啊,还好哥机灵,找资料呗!
终于找到问题了,
只需要重写activity的onKeyDown方法,在onKeyDown里后退即可
public boolean onKeyDown(int keyCode ,KeyEvent keyEvent){
if(keyCode==keyEvent.KEYCODE_BACK){//监听返回键,如果可以后退就后退
if(webView.canGoBack()){
webView.goBack();
return true;
}
}
return super.onKeyDown(keyCode, keyEvent);
}
全部代码贴出,免得以后忘记
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends Activity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
init();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
private void init() {
webView = new WebView(this);
webView.loadUrl("http://www.gg4493.cn/");
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
setContentView(webView);
}
public boolean onKeyDown(int keyCode ,KeyEvent keyEvent){
if(keyCode==keyEvent.KEYCODE_BACK){
if(webView.canGoBack()){
webView.goBack();
return true;
}
}
return super.onKeyDown(keyCode, keyEvent);
}
}
转载于:https://www.cnblogs.com/yangjiyue/p/7771694.html
android使用webview时按后退退出的问题相关推荐
- 安卓开发之android使用webview时按后退会退出而不是回退的问题
最近公司使用android打包html5游戏, 使用android点webview打包html5游戏,代码都好了,具体如下 public class MainActivity extends Acti ...
- qt5.10 for android 使用webview时qml 与html 中js的相互访问
webview 本身没有qwebchannel 的接口,只能通过WebSocketServer 间接的访问. 参考 https://stackoverflow.com/questions/513131 ...
- Android 使用Webview时,有时抛 java.lang.Throwable: EventHub.removeMessages(int what = 107) warning...
在网上搜了大半天,也没能找到出现该警告的确切原因.通过测试发现,如果不加载url就不会出现该警告.突然间有个想法,莫非是跟页面中的html代码有关? 可是,页面是个静态html 页面,只包含几行最基本 ...
- 解决vue在ios或android中用webview打开H5链接时#号后面的参数被忽略问题angular同样适用
解决vue在ios或android中用webview打开H5链接时#号后面的参数被忽略问题angular同样适用 参考文章: (1)解决vue在ios或android中用webview打开H5链接时# ...
- Android中WebView加载sdcard中的html时提示:ERR_FILE_NOT_FOUND和ERR_ACCESS_DENIED
场景 Android中WebView加载sdcard中的html显示: Android中WebView加载sdcard中的html显示_BADAO_LIUMANG_QIZHI的博客-CSDN博客 在实 ...
- Android 显示 WebView ,加载URL 时,向webview的 header 里面传递参数
1.主要布局 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:and ...
- Android【WebView】
WebView全面解析 简介 WebView是android中一个非常重要的控件,它的作用是用来展示一个web页面.它使用的内核是webkit引擎,4.4版本之后,直接使用Chrome作为内置网页浏览 ...
- android 无障碍 webview,Android WebView使用
原标题:Android WebView使用 前言 Android内置webkit内核的高性能浏览器,而WebView则是在这个基础上进行封装后的一个 控件,WebView直译网页视图,我们可以简单的看 ...
- Android开发-WebView/WebViewClient/WebChromeClient简介 API详述 【一】
老早之前就想总结下Webview相关的知识点了,因为互联网大潮中,很多APP都会使用到Webview,像那些不计其数的电商APP,无一例外的使用Webview:或者一些非电商APP中的像广告页面,注册 ...
最新文章
- 【转】Maven Jetty 插件的问题(css/js等目录死锁)的解决
- execSQL()方法和rawQuery()方法
- Remove Duplicates from Sorted List
- SQL 注入工具集合
- 通过组策略找回“网上邻居”
- RxSwift之UI控件UISlider与UIStepper扩展的使用
- Python游戏开发--外星人入侵(源代码)
- 关于F5的一些基础话题
- 如何用 Blazor 实现 Ant Design 组件库(二)
- 计算机动画 应用,计算机动画与应用.PDF
- 图像的频率谱和功率谱代表什么_视频/图像质量评价综述(三)
- 《Effective Ruby:改善Ruby程序的48条建议》一第6条:了解Ruby如何构建继承体系
- 随机运算HTML5代码,js随机数学加法计算答题代码
- linux下删除隐藏文件夹及子文件夹
- ecshop小京东模板切换到smarty3.13之模板函数,用模板函数替换楼层
- c#物联网_基于C#实现日志记录与SQL SERVER的双向存储工控数字化之旅
- LabVIEW编程LabVIEW开发研华通用驱动XNavi 例程与相关资料
- Python入门第7课——tuple变量(只读课堂)
- Arab Security Cyber Wargames 2022 Qualifications corCTF 部分题解
- matlab barrier,使用fmincon函数出现barrier问题
热门文章
- 2022-2028年中国分散式风电行业投资分析及前景预测报告
- xshell问题汇总
- 数学上各种空间概念的关系图
- 计算机组成原理中的“上溢”和“下溢”分别的定义是什么?
- LeetCode简单题之两个相同字符之间的最长子字符串
- 2021年大数据ZooKeeper(二):ZooKeeper集群搭建
- ZooKeeper简介和概念知识
- Android AnimationUtils (动画)的使用
- Glide 加载图片不显示(Android9.0无法加载图片)
- 微信小程序时间戳转化为时间