- 浏览: 86916 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
wangyudong:
家里是拨号上网,不行的,找到了一个Holer工具,只需要配置一 ...
【如何通过广域网访问局域网的服务器?】 -
叮咚可乐名:
大数据就是这么任性第一季数据结构和算法http://pan.b ...
数据结构与算法-简介 -
戢_时光:
...
【Java集合之二】Set集合 -
lzg406:
HTTP默认方式下,使用持久连接。 这个值得推敲
【应用层】之一:HTTP协议与FTP协议 -
mute_:
特别腻害呢
正则表达式1:概念
本文围绕以下两个部分展开:
一、WebView
WebView案例
一、WebView
1. 概念
WebView能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页。
2. 实现方法
(1)在AndroidManifest.xml文件中添加允许此app访问网络的权限,否则出现Web page not available错误。
(2.1)在activity中先声明WebView
然后再在onCreate()方法中加载布局文件。
(2.2)在activity中先声明WebView
然后再在onCreate()方法中实例化WebView组件:
当(3)完成后,再在onCreate()方法中调用Activity的setContentView( )方法来显示网页视图:
(3)调用WebView的loadUrl( )方法,设置WebView要显示的网页。
(4)为了让WebView能够响应超链接功能,调用setWebViewClient( )方法,设置 WebView视图。
(5)用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法。如果不做任何处理,点击系统回退键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面。
WebView案例
1. 在AndroidManifest.xml文件中添加允许此app访问网络的权限。
2. 用到ButterKnife,因此依然要导包。
3. strings.xml
4. activity_main.xml。写一个按钮。
5. MainActivity。按钮点击事件。
6. 创建WebViewActivity和activity_web_view.xml。
7. activity_web_view.xml。写一个WebView控件,并把边距去掉。
8. WebViewActivity。
效果如下:
一、WebView
WebView案例
一、WebView
1. 概念
WebView能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页。
2. 实现方法
(1)在AndroidManifest.xml文件中添加允许此app访问网络的权限,否则出现Web page not available错误。
<uses-permission android:name="android.permission.INTERNET" />
(2.1)在activity中先声明WebView
private WebView webView;
然后再在onCreate()方法中加载布局文件。
setContentView(R.layout.activity_web_view);
(2.2)在activity中先声明WebView
private WebView webView;
然后再在onCreate()方法中实例化WebView组件:
webView = new WebView(this);
当(3)完成后,再在onCreate()方法中调用Activity的setContentView( )方法来显示网页视图:
setContentView(webView);
(3)调用WebView的loadUrl( )方法,设置WebView要显示的网页。
(4)为了让WebView能够响应超链接功能,调用setWebViewClient( )方法,设置 WebView视图。
(5)用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法。如果不做任何处理,点击系统回退键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面。
WebView案例
1. 在AndroidManifest.xml文件中添加允许此app访问网络的权限。
2. 用到ButterKnife,因此依然要导包。
3. strings.xml
<resources> <string name="app_name">WebViewTest</string> <string name="hello_world">Hello world!</string> <string name="action_settings">Settings</string> <string name="title_activity_web_view">WebViewActivity</string> <string name="btn_web_view">Web View</string> </resources>
4. activity_main.xml。写一个按钮。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <Button android:id="@+id/btnWebView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_web_view" /> </LinearLayout>
5. MainActivity。按钮点击事件。
package com.android.webviewtest; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import butterknife.ButterKnife; import butterknife.OnClick; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.inject(this); } @OnClick(R.id.btnWebView) public void webViewClick() { Intent intent = new Intent(this, WebViewActivity.class); startActivity(intent); } }
6. 创建WebViewActivity和activity_web_view.xml。
7. activity_web_view.xml。写一个WebView控件,并把边距去掉。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.android.webviewtest.WebViewActivity"> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent"/> </RelativeLayout>
8. WebViewActivity。
package com.android.webviewtest; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.Toast; public class WebViewActivity extends Activity { // (2) private WebView webView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_web_view); // (2) webView = (WebView) findViewById(R.id.webView); // 设置使页面可以执行JS脚本 webView.getSettings().setJavaScriptEnabled(true); // 设置使页面支持缩放 webView.getSettings().setBuiltInZoomControls(true); // 设置默认的字体大小 // webView.getSettings().setDefaultFontSize(5); // (3)加载给定的Url webView.loadUrl("http://192.168.1.124:8090/androidcloud/index.jsp"); // (4) webView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // 使用当前 WebView 处理跳转 view.loadUrl(url); // true 表示此事件在此处被处理,不需要再广播 return true; } @Override public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { // 转向错误时处理: // 给出一个 Toast提示 Toast.makeText(getApplicationContext(), "Oh no!" + description, Toast.LENGTH_SHORT).show(); } }); } /** * (5) * 默认点回退键,会返回到前面的 Activity 。 * 因此,需监听按钮操作,使回退在 WebView 内发生 * * @param keyCode * @param event * @return */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { webView.goBack(); return true; } return super.onKeyDown(keyCode, event); } }
效果如下:
发表评论
-
WebView (网络视图)
2015-09-09 22:12 0本文围绕以下两个部分展开: 一、WebView WebVi ... -
【攻克Android (41)】HttpURLConnection
2015-09-08 17:43 1294本文围绕以下三个部分展开: 一、HttpURLConnec ... -
HttpURLConnection
2015-09-08 17:42 0本文围绕以下三个部分展开: 一、HttpURLConnec ... -
【攻克Android (40)】JSON解析
2015-09-07 20:49 1223本文围绕以下三个部分 ... -
JSON解析
2015-09-07 20:47 0本文围绕以下三个部分 ... -
【攻克Android (39):XML解析之四】Simple方式解析XML
2015-08-27 18:38 1648本文围绕以下三个部分 ... -
【攻克Android (38):XML解析之三】Pull方式解析XML
2015-08-27 09:25 1679本文围绕以下两个部分展开: 一、Pull解析 案例一:P ... -
【攻克Android (37):XML解析之二】SAX方式解析XML
2015-08-26 15:15 835本文围绕以下两个部分展开: 一、SAX解析 案例一 ... -
【XML解析之一】SAX方式解析XML
2015-08-26 02:58 0本文围绕以下四个部分展开: 一、SAX解析 案例一 ... -
【攻克Android (36):XML解析之一】DOM方式解析XML
2015-08-26 00:27 880本文围绕以下三个部分展开: 一、XML概述 二、DOM解析 ... -
DOM方式解析XML案例
2015-08-26 00:26 0本文围绕以下四个部分展开: 一、DOM解析 案例一 ... -
【XML解析之四】Simple方式解析XML
2015-08-27 18:36 0本文围绕以下三个部分 ... -
【XML解析之一】Pull方式解析XML
2015-08-26 02:56 0本文围绕以下四个部分展开: 一、Pull解析 案例一:P ... -
【攻克Android (22)】View/Tween Animation 视图动画(补间动画)
2015-08-25 21:22 828本文围绕以下四个部分 ... -
【攻克Android (22)】View/Tween Animation 视图动画(补间动画)
2015-08-25 21:21 0本文围绕以下四个部分 ... -
【攻克Android (45)】四大组件之 ContentProvider
2015-08-18 16:24 993本文围绕以下两个部分展开: 一、ContentProvide ... -
【攻克Android (32)】Notification 通知
2015-08-17 19:57 881本文围绕以下两个部分展开: 一、通知 案例一 一 ... -
Notification 通知
2015-08-17 19:56 0本文围绕以下两个部分展开: 一、通知 案例一 一 ... -
BroadcastReceiver完整版
2015-08-17 13:15 0本文围绕以下四个部分展开: 一、广播 案例一:系统广播(属于 ... -
【攻克Android (33)】四大组件之 BroadcastReceiver
2015-08-17 13:14 1059本文围绕以下三个部分 ...
相关推荐
webview全称叫做Android System WebView,它是Android生态系统的重要组成部分,也是Chrome浏览器的内核。可以让你的手机变得瞬间畅通,它会及时优化网页相关数据,有着接入式的操作体验数据,各种类型的应用程序可...
这是AOSP Webview, 包名com.android.webview, 不带google的 带google包名的可以下载 google system webview覆盖安装,可以略过 此文件包含 arm和arm64的webview这是AOSP Webview, 包名com.android.webview, 不带...
android system webview 适配系统>=5.0
android 8.0 webview 拍照、预览、二维码扫描比较完整的例子,对于权限检查控制,有比较完善的提示写法。可以下载后,直接在android studid上运行,编译版本和target版本均是SDK android 8.0,最低版本设置成了...
Android实现WebView懒加载,提前进行页面JS资源加载。减少WebView加载时间及加载资源问题。Android 8.0以前需要引入X5内核,Android 8.0以后无特殊要求。
实现Android中WebView图片的缓存,并且实现如何替换WebView中默认图片以及如何实现图片的点击。
Android 原生浏览器内核,包名 com.android.webview,内核版本116。 适用版本:Android API 24 及以上版本。 com.android.webview_116.0.5845.163-minAPI24.apk
Android通过WEBVIEW调用HTTPS
Android-X5WebView基本封装和使用 通过OkHttp拦截器、自定义CookieJar有效完成客户端与H5端的Cookie同步管理 监听WebView的加载进度 滚动条的设置(隐藏或者显示,内侧显示还是外侧显示) 优化X5WebView的预加载问题...
使用android studio 3.1.2 ,利用webview,实现登录界面。采用本地html 页面
这是AOSP的webview,包名com.android.webview,不是google的webview
这是AOSP Webview, 包名com.android.webview, 不带google的 带google包名的可以下载 google system webview覆盖安装,可以略过 此文件包含 arm和arm64的webview
自定义webview中的网页“拍照”按钮调用系统相机拍照的API接口MyBrowserAPI.CapturePhoto(filename),在网页JavaScript中调用以后返回存放照片的完整路径名,默认将照片存放在系统SD卡的根目录,包含整个工程中需要添加...
Android APP使用WebView调用H5页面完成摄像头扫描二维码 项目使用Android Studio,打开项目可以直接运行,用过的都说好:)
Android WebView 去除标题 利用javacript交互
android使用webView实现java程序与js脚本的相互调用,
在Android的webview中定制js的alert,confirm和prompt对话框的方法
Android 基于x5Webview 浏览文件 office文档 已测试Android11 功能实现
在android的webview中实现websocket通信
1.WebView攻击⾯ 2.WebView配置与使⽤ 3.WebViewURL校验 4.WebView安全防御 5.总结 WebView已成为Android ...通过本演讲,开发者能了解到Android WebView最新的典型漏洞类型及其利用手法,从而获得安全编程方面的指南。