经过上一篇,我们已经可以打开html页面了,但是有很多细节方面的内容我们还需要调整。

  • 打开链接的问题

细心的网友可能已经发现,打开百度页面后,点击顶部的链接,会在手机的浏览器中打开相应的页面,这显然不是我们希望的。

在onCreate中添加如下代码

webview.setWebViewClient(new WebViewClient()
        {
            public boolean shouldOverrideUrlLoading(WebView view,String url)
            {
                view.loadUrl(url);
                return true;
            }
        });

则可以在当前页面打开链接了。

  • 回退的问题

打开链接的问题解决了,但是打开链接后,点击回退的按钮,直接退出程序了。

重载onKeyDown的函数,使其在页面内回退

@Override

@Override
    public boolean onKeyDown(int keyCoder,KeyEvent event)
    {
        //页面内回退
        if((keyCoder==KeyEvent.KEYCODE_BACK) && webview.canGoBack()){
            webview.goBack();
            return true;
        }

return super.onKeyDown(keyCoder,event);
    }

弹出提示框的问题

在index页面里加一个按钮,alert弹出提示

<button onclick="alert('测试弹出窗口')">弹出窗口</button>

点击后无窗口弹出,在Oncreat中添加如下代码

webview.setWebChromeClient(new WebChromeClient());

  • 去掉menu

右上角有三个点的按钮,点击后有个默认的setting按钮,对我们装载html页面来说这个menu是没什么用的,那么我们现在就把这个menu处理掉。处理方法可以完全删除也可以先去掉setting,以后想添加的时候可以方便添加,为了方便以后添加,这里只是把这个setting去掉,menu相关的文件还保留。

menu_main.xml文件中把item项删除掉

现在编译会报错,还需要把mainactivity.java中的响应按钮的代码注释掉

现在,再看右上角就没有那三个点的menu了

到此篇结束,已经可以搭建出一个功能满足日常页面展示的apk了,后续有精力会逐步完善对手机设备的调用部分的功能。

做的过程中一路磕磕绊绊,查看了不少人的文章,由于开始查找资源的时候并没有准备写一篇文章,这些基本的问题解决后,才发现没有完整的一篇文章教我们避开这些坑,所以才有了写这篇文章的想法。所以并没有保留参看文章的地址,在此对所有参考过的文章作者表示感谢。

最后,是源码下载

手把手教你用android studio创建第一个安卓程序加载html5页面(二)的更多相关文章

  1. 用android studio创建第一个安卓程序加载html5 页面

    前言 软件版本:android studio v1.0正式版,由于v0.x以来软件变化一直比较大,很多问题搜索的解决方案也都是v0.x版本时代的,故首先声明一下版本. 动机:由于工作中需要对移动端软件 ...

  2. 手把手教你实现RecyclerView的下拉刷新和上拉加载更多

    手把手教你实现RecyclerView的下拉刷新和上拉加载更多     版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明. 本文链接:https:// ...

  3. Android教程-01 Android Studio创建第一个项目

    视频教程建议采用超清模式, 关注更多视频订阅我的优酷 最近一直使用Android Studio 简单把Android Studio介绍下 1. 首先介绍下 Android Studio的快捷键 由于之 ...

  4. 解决Logger在Android Studio 3.1版本无法正常加载tag格式

    已经升级到Android Studio 3.1的同学可能会发现一个问题, Logcat中如果短时间出现多条日志tag相同, 只会显示第一条日志的tag, 后面的tag会自动隐藏, 这时com.orha ...

  5. 【转】手把手教你读取Android版微信和手Q的聊天记录(仅作技术研究学习)

    1.引言 特别说明:本文内容仅用于即时通讯技术研究和学习之用,请勿用于非法用途.如本文内容有不妥之处,请联系JackJiang进行处理!   我司有关部门为了获取黑产群的动态,有同事潜伏在大量的黑产群 ...

  6. 手把手教你读取Android版微信和手Q的聊天记录(仅作技术研究学习)

    1.引言 特别说明:本文内容仅用于即时通讯技术研究和学习之用,请勿用于非法用途.如本文内容有不妥之处,请联系JackJiang进行处理!   我司有关部门为了获取黑产群的动态,有同事潜伏在大量的黑产群 ...

  7. 周一干货~手把手教你安装 Visual Studio 安卓模拟器

    干货~手把手教你安装 Visual Studio 安卓模拟器 转 http://mini.eastday.com/mobile/171107134734194.html# 今天软妹为大家带来一篇来自M ...

  8. 【Android Studio使用教程2】Android Studio创建项目

    创建项目 首先,先指出Android Studio中的两个概念. Project 和 Module .在Android Studio中, Project 的真实含义是工作空间, Module 为一个具 ...

  9. Android Studio创建项目

    创建项目 首先,先指出Android Studio中的两个概念. Project 和 Module .在Android Studio中, Project 的真实含义是工作空间, Module 为一个具 ...

随机推荐

  1. P2488 [SDOI2011]工作安排 费用流

    \(\color{#0066ff}{ 题目描述 }\) 你的任务是制定出一个产品的分配方案,使得订单条件被满足,并且所有员工的愤怒值之和最小.由于我们并不想使用Special Judge,也为了使选手 ...

  2. the swap trick用于锐减过剩容量

    1.由于vector的复制构造函数只为被复制的vector分配它所需要的空间,故可以用如下的方式来削减vector v中过剩的容量:vector<int>(v).swap(v) 2.the ...

  3. Gym - 101845D 计算几何

    Ignacio is a famous mathematician, some time ago he was married with Dolly, a famous scientific, at ...

  4. js获取复选框内容

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script sr ...

  5. pytorch contiguous的使用

    contiguous一般与transpose,permute,view搭配使用 即使用transpose或permute进行维度变换后,调用contiguous,然后方可使用view对维度进行变形. ...

  6. poj2083 分形(图形的递归)

    题目传送门 代码有注释. #include<iostream> #include<algorithm> #include<cstdlib> #include< ...

  7. 2015苏州大学ACM-ICPC集训队选拔赛(1) 1008

    猪猪过河 Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submissi ...

  8. css雪碧图制作

    使用css背景合并工具cssSprite 工具下载链接: http://download.csdn.net/download/wx247919365/8741243 1.选择文件 2.生成雪碧图 3. ...

  9. 需要了解的几个Java基础点

    关键字 native:表示要调用非Java语言写函数,比如用C语言使用JNI实现的接口.比如windows环境的dll文件.举例:Object.hashcode() 位运算 << n:左移 ...

  10. 利用RELK进行日志收集

    利用RELK进行日志收集 发布时间:April 3, 2018 // 分类:运维工作,开发笔记,python // No Comments 前不久在做应急的总是遇到要求对日志进行分析溯源,当时就想到如 ...