利用web实现android的界面,利用WebView加载手机端网页实现APP封装
**思路 : **
安卓端只使用一个Activity
此Activity中只包含WebView这个控件
并且隐藏此Activity的标题栏
这样只要我们前端对手机浏览器的适配做的很好
我们这个WebView做成的APP完全就可以当成一个具有完整功能的APP
**代码 : **
manifest.xml
package="cn.edu.hit.webview">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/Theme.AppCompat.NoActionBar">
* **activity_main.xml**
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
tools:context="cn.edu.hit.webview.MainActivity">
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/webView"
android:layout_alignParentStart="true"/>
* **MainActivity.java**
package cn.edu.hit.webview;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
//声明控件
WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
loadWebView();//开始加载页面
}
//加载页面
public void loadWebView(){
//初始化webview
webView = (WebView) findViewById(R.id.webView);
//加载网页
webView.loadUrl("http://www.jianshu.com/users/bf30f18c872c/latest_articles");
//覆盖webView默认通过系统浏览器打开网页的方式
webView.setWebViewClient(new WebViewClient());
//获取WebView类设置对象
WebSettings settings = webView.getSettings();
//使webView支持js
settings.setJavaScriptEnabled(true);
//设置webView缓存模式
webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);//(优先使用缓存)
//webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);//(不使用缓存)
}
//重写物理按键的返回逻辑(实现返回键跳转到上一页)
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//用户触摸返回键
if(keyCode == KeyEvent.KEYCODE_BACK){
//判断webView能否返回上一页(是否存在历史记录)
if(webView.canGoBack()){
webView.goBack();
return true;//直接返回,不执行父类点击事件
}else{
System.exit(0);
}
}
return super.onKeyDown(keyCode, event);
}
}
利用web实现android的界面,利用WebView加载手机端网页实现APP封装相关推荐
- android webview加载不出来,【新手有关问题】Android浏览器中WebView加载不出网页
当前位置:我的异常网» Android » [新手有关问题]Android浏览器中WebView加载不出网 [新手有关问题]Android浏览器中WebView加载不出网页 www.myexcepti ...
- android程序中关于webview加载html文件
这两天用webview加载html时遇到很多问题也学到了不少,仅在这里记载以供以后参考,哪里不完善的还望有心人多加补充. (这里只介绍webview.loadUrl()) 思路:拿到网页url,然后把 ...
- Android sdk 21~23 WebView加载报错
今天适配完成AndroidQ,Android5.0+又出幺蛾子了,线上App首页大促活动崩了,首页A类活动....这是不是绩效都要清0了. 拿出我尘封5000年的三星note3搞一波事情,我的天刚进去 ...
- android 4.4 webview加载部分https网页白屏
private void initWebview(){//mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);//mWebView.setLay ...
- webView加载不出网页的一种可能情况
我的webview的Java代码里有以下内容 @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(s ...
- android webview 太大,Android应用开发之Android WebView加载图片显示过大的处理教程(代码教程)...
本文将带你了解Android应用开发Android WebView加载图片显示过大的处理教程(代码教程),希望本文对大家学Android有所帮助. Webview加载图片时,经常会遇到图片显示不符合 ...
- Android WebView 加载富文本内容
WebView加载数据的方式有两种: 1. webView.loadUrl(data);//加载url 2. webView.loadDataWithBaseURL(null,data, " ...
- android动态图片适配,Android适配利用webview加载后图片显示过大的问题解决
前言 最近在开发过程中,需要用webview控件来展示文章的详情页面,流程是通过请求后台数据,然后用控件加载,而后台返回的文章详情页面是直接网页端使用的,并没有对移动端进行适配,导致webview加载 ...
- android 使用webView加载欢迎界面的个人实现思路,实现欢迎界面不断在改变
写这篇的时候正赶上快中午了,老娘让我去吃别人家喜酒,同时把我这个单身狗推荐出去- 对于这事 -->我很烦!!! 回归正题. android 导航界面 最多的就是ViewPager和Fragmen ...
最新文章
- 当世界模型被用于sim2real:机器人通过视觉想象和交互尝试来学习
- CCNA必会知识点:PAP单双向认证
- 特征点提取之Harris角点提取法
- openpyxl写入一行数据_老板让我从几百个Excel中查找数据,我用Python一分钟搞定!...
- 句句真研—每日长难句打卡Day3
- 串口中断和定时器中断_51单片机中断机制(定时器/计数器)
- Bailian2807 两倍【序列】
- javascript中ajax的优缺点
- Java学习(01-10天, 基本语法)
- chrome历史版本及重大变化(维基百科)
- vmware 安装报错:failed to install hcmon drivers 完美解决(含VMware15激活码)
- 红米开发版刷机教程_红米K20开发版刷机包(官方系统最新完整固件升级包V20.1.9MIUI开发版)...
- Linux与Windows设置共享文件夹的实现
- garbor 特征 matlab,Gabor小波滤波用于纹理特征提取
- gta4android2018,gta4apk手机版
- 【web前端特效源码】使用HTML5+CSS3制作一个3D视频旋转立方体动画效果~~适合初学者~超简单~ |前端开发|IT软件
- A component required a bean of type ‘com.yida.data.religion.common.dao.AddressInfoMapper‘ that could
- 生容易,活容易,生活不容易!
- Python argparse.ArgumentParser的add_argument()用法
- 动漫人物的身体结构怎么画,动漫人物全身画法教程
热门文章
- [测试通过]svn详细权限配置
- was compiled with optimization - stepping may behave oddly; variables may not be available.
- 多层介质中广义反射系数与广义透射系数的计算与编程思路
- 使用windows自带的测速工具WinSat对移动硬盘进行测速
- CrossOver让你在M1Mac计算机运行Windows应用程序
- ESP8266学习笔记:实现ESP8266的局域网内通信
- 2014年中国95家企业入围世界500强,超日本
- wps 在线预览、在线编辑 InvalidSignature问题排查
- 文本数据分析实战【数据清洗、统计分析、可视化展示、情感分析】
- 黑马程序员---java基础-Java之IO