最近公司使用android打包html5游戏,

使用android点webview打包html5游戏,代码都好了,具体如下

public class MainActivity extends ActionBarActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);WebView webView=new WebView(this);webView.getSettings().setJavaScriptEnabled(true);//支持js        webView.loadUrl("http://www.ysmall.cc/mobile");webView.setWebViewClient(new MyWebViewClient());}    @Override    public 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;}    @Override    public 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://gqhondatp.61tg.com/");
  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);

}
}

bingo

与君共勉~

转载于:https://blog.51cto.com/8998489/1680000

安卓开发之android使用webview时按后退会退出而不是回退的问题相关推荐

  1. 安卓开发之WebView,进度条ProgressBar以及MediaPlayer和SonundPool的使用

    原 安卓开发之WebView,进度条ProgressBar以及MediaPlayer和SonundPool的使用 2018年06月06日 15:04:21 阅读数:106 内容比较简单,仅用作笔记,所 ...

  2. android webview 太大,Android应用开发之Android WebView加载图片显示过大的处理教程(代码教程)...

    本文将带你了解Android应用开发Android  WebView加载图片显示过大的处理教程(代码教程),希望本文对大家学Android有所帮助. Webview加载图片时,经常会遇到图片显示不符合 ...

  3. android webview权限申请_Android应用开发之android 6.0下webview的定位权限设置方法

    本文将带你了解Android应用开发android 6.0下webview的定位权限设置方法,希望本文对大家学Android有所帮助. 如下所示: WebView webView =   (WebVi ...

  4. 安卓开发之Handler、HandlerThread学习篇

    安卓开发之Handler.HandlerThread学习心得篇           开篇说明:本文采用的都是最基础最简单的例子,目的只有一个:希望大家将学习的焦点放在Handler的理解和使用上,我不 ...

  5. android vr播放器 开发,Android应用开发之Android VR Player(全景视频播放器)- ExoPlayer播放器MPEG-DASH视频播放...

    本文将带你了解Android应用开发之Android VR Player(全景视频播放器)- ExoPlayer播放器MPEG-DASH视频播放,希望本文对大家学Android有所帮助. Androi ...

  6. 镜像处理坐标 android,Android应用开发之Android重写ImageView实现图片镜像效果的代码教程...

    本文将带你了解Android应用开发之Android重写ImageView实现图片镜像效果的代码教程,希望本文对大家学Android有所帮助. 前两天朋友问我一个问题,如何实现从手机系统相册加载一张图 ...

  7. java edittext 输入监听_Android应用开发之Android EditText 监听用户输入完成的实例

    本文将带你了解Android应用开发Android EditText 监听用户输入完成的实例,希望本文对大家学Android有所帮助. 我们都知道, Android   EditText输入框,并没有 ...

  8. android 开发art,Android应用开发之Android 系统启动原理(art 虚拟机)

    本文将带你了解Android应用开发之Android 系统启动原理(art 虚拟机),希望本文对大家学Android有所帮助. Android   系统启动原理(art 虚拟机) 一.虚拟机的启动 A ...

  9. android targetapi版本低,Android应用开发之Android @TargetAPI版本兼容性解析

    本文将带你了解Android应用开发Android @TargetAPI版本兼容性解析,希望本文对大家学Android有所帮助. Android   @TargetAPI版本兼容性解析,Android ...

最新文章

  1. Linux 下 UltraEdit 版本: 16.1.0.18 破解 30 天试用限制
  2. Nodejs.热部署方法
  3. 知识图谱升温之势已现,不要错失下一个AI风口
  4. Android游戏框架之基础之AA碰撞系统
  5. 如何查看默认root密码?
  6. 蓝桥杯2015初赛-奖券数目-枚举
  7. github和git@osc提交问题
  8. Ubuntu下使用UFW配置防火墙
  9. MVC控制器执行重定向
  10. Memento - 备忘录模式
  11. [转载] Python:Numpy详解
  12. 2020德勤面试开始了吗_四大面试-德勤面试流程免费给你,还不收好?截止2020年9月...
  13. 电商项目:畅购商城4.0
  14. 基于虚拟机的VxWorks实验平台设计与实现(读研时的一篇论文)
  15. 乘风领航、耀世创新——DEFI平台Lizard打造数字金融新世界
  16. HTML5+CSS大作业——三八女人节主题设计(1页)
  17. AlexNet(Pytorch实现)
  18. 史上最详细axios,读完你就全部懂了
  19. R实战| 雷达图(Radar Chart)
  20. 端口隔离port-isolate(二层隔离)

热门文章

  1. QT界面布局、系统信号和槽、启动进程、EDIT回车快捷键、正常信号和槽、QMessageBox、UIC使用(界面重新生成)
  2. cygwin使用笔记
  3. 2018年的最后一篇随笔
  4. 20170910__换电瓶
  5. MySQL视图的应用
  6. 初秋 · 外婆家的茶山 · 快乐的味道 2012年9月
  7. 视频时代的大数据:问题、挑战与解决方案
  8. 重磅!阿里首次全面公开展示AI布局(附布局图/成绩单/六产业详解)
  9. STM32之CAN总线原理
  10. 那些辞职考公的程序员,最后都怎么样了?