1. 权限加入

    1. <uses-permission android:name="android.permission.INTERNET"></uses-permission>
  2. 设置WebView可用
    1. WebView webview = (WebView)findViewById(R.id.vew);
    2. webview.getSettings().setJavaScriptEnabled(true);
    3. webview.loadUrl("http://www.baidu.com");
  3. 如果点击VebView中,希望继续在当前浏览器中相应,而不是在新的浏览器中相应,则必须加入如下代码
    1. webview.setWebViewClient(new WebViewClient(){
    2. public boolean shouldOverrideUrlLoading(WebView view, String url) {
    3. view.loadUrl(url);
    4. return true;
    5. }
    6. });
  4. 如果不做任何处理,浏览网页,点击系统“Back”键,整个Browser会调用finish()而结束自身,如果希望浏览的网 页回退而不是推出浏览器,需要在当前Activity中处理并消费掉该Back事件。
    1. public boolean onKeyDown(int keyCode, KeyEvent event) {
    2. if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) {
    3. webview.goBack();
    4. return true;
    5. }
    6. return super.onKeyDown(keyCode, event);
    7. }
  5. 实例,和js交互
    1. <!doctype html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5. <title>demo</title>
    6. <script>
    7. function wave(){
    8. document.getElementById('button').value = 'aaaaaaa';
    9. }
    10. </script>
    11. </head>
    12. <body>
    13. <input type="button" id="button" value="点我试试看" onClick="alert(1);window.demo.clickOnAndroid()" />
    14. </body>
    15. </html>
    1. WebView webview;
    2. private Handler mHandler = new Handler();
    3. @Override
    4. protected void onCreate(Bundle savedInstanceState) {
    5. super.onCreate(savedInstanceState);
    6. setContentView(R.layout.activity_main);
    7. webview = (WebView)findViewById(R.id.vew);
    8. webview.getSettings().setJavaScriptEnabled(true);
    9. webview.setWebViewClient(new WebViewClient(){
    10. public boolean shouldOverrideUrlLoading(WebView view, String url) {
    11. view.loadUrl(url);
    12. return true;
    13. }
    14. });
    15. webview.addJavascriptInterface(new androidclick() , "demo");
    16. webview.loadUrl("file:///android_asset/demo.html");
    17. }
    18. private final class androidclick{
    19. public void clickOnAndroid(){
    20. mHandler.post(new Runnable() {
    21. public void run() {
    22. webview.loadUrl("javascript:wave()");
    23. }
    24. });
    25. }
    26. }
  6. 为了让WebView从apk文件中加载assets,Android SDK提供了一个schema,前缀为"file:///android_asset/"。WebView遇到这样的schema,就去当前包中的 assets目录中找内容。如上面的"file:///android_asset/demo.html"
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/lzqbk/p/d7f0adba7b692e89ff837d179f4399a4.html

WebView起步1相关推荐

  1. uni-app.04.发布成H5后,uni.chooseImage方法在android WebView上无法使用

    发布成H5后,uni.chooseImage方法在android WebView上无法使用 引言 解决方案 特别注意 引言 经过三个星期的折腾,uni-app的编码阶段宣告结束,正式进入到测试阶段.由 ...

  2. Android webview 加载的html 无法显示弹框

    WebSettings webSettings = webView.getSettings(); // 设置与Js交互的权限 webSettings.setJavaScriptEnabled(true ...

  3. Android WebView 加载http网址的h5 不显示

    感觉好奇怪 加载百度以及其他的地址就显示,加载前端给的h5就是不显示 最后添加了适应h5显示了 设置如下 WebSettings webSettings = webView.getSettings() ...

  4. 微信小程序web-view使用

    web-view 可以是微信小程序支持嵌套网页 例如想 嵌套百度可以这样 <view ><web-view src="https://www.baidu.com/s?ie= ...

  5. webview Java与JS互调

    Android调用JS:方法一 webView.loadUrl("javascript:show('"+info+"')"); Android调用JS:方法二 ...

  6. 在okhttp3,WebView中忽略HTTPS证书校验

    在APP开发过程中,后台使用的可能是自签的Https证书,如果不忽略证书校验,会出现Trust anchor for certification path not found的错误 Okhttp3忽略 ...

  7. iOS Webview打开不受信的URL

    在我们开发过程中经常会碰到直接访问开发人员的私有地址, 这样在app 上是无法打开指定的网页的. 在iOS中需要对WKWebView 进行如下设置: 1.在工程的Plist 文件中添加一下选项 App ...

  8. android使用webview时按后退退出的问题

    使用webview打包图片站点http://www.gg4493.cn,代码都好了,具体如下 public class MainActivity extends ActionBarActivity { ...

  9. Android WebView使用与JavaScript使用

    WebView基本使用 WebView是View的一个子类,可以让你在activity中显示网页. 可以在布局文件中写入WebView:比如下面这个写了一个填满整个屏幕的WebView: <?x ...

最新文章

  1. 一、javaSE (二十三)多线程
  2. pymongo cusor not found
  3. 一个“退学生”到CTO的逆袭之路
  4. vuepress侧边栏配置_vuepress的侧边栏怎么动态生成
  5. 单目标识别下的以中心点定位为目标值的yolo改进算法措施
  6. LeetCode_617.合并二叉树
  7. java温度计的实现_echart 之实现温度计
  8. Android studio编译出现Failed to finalize session : INSTALL_FAILED_INVALID_APK
  9. arrays.sort(._Arrays.hashCode(Object [])与Objects.hash(Object…)
  10. 微信游戏脑力大乱斗92一个计算机,微信脑力大乱斗答案大全_全关卡图文攻略_软吧...
  11. 从程序员到项目经理(二)
  12. linux中编辑好的源如何保存,Linux下, Eclipse C/C++ IDE下编辑好C/C++源程序之后要先保存!!!否则,就会……...
  13. android中工厂模式应用,抽象工厂模式在android中使用
  14. html swf格式转换器,蒲公英SWF格式转换器
  15. 前端监控--通过钉钉自定义机器人发送告警消息
  16. 华为笔记本怎么激活windows_HUAWEI MateBook笔记本怎么激活Office?
  17. mini2440 网络视频传输试验
  18. 模糊视频如何修复高清?这个方法教给你
  19. Gee引擎配置微端不更新,连接不上,尝试重新连接的解决方法
  20. 致自己四年后的一封信

热门文章

  1. alphac测试和bata测试区别_【软件测试】和【游戏测试】有区别么?
  2. 【C++】函数的形参
  3. 优化在深度学习中的挑战
  4. Nodejs留言板案例总结
  5. Matlab将多个柱形图放于一个图中
  6. 单自由度振动全解:matlab理论计算 virtual.lab motion仿真Excite PU仿真
  7. A. Gamer Hemose
  8. atoi函数_C语言字符串、数字转换函数大全!
  9. java导入包srcy有红叉_eclipse导入项目后出现红色叉号的解决方案
  10. android 技能标签功能_android专业技能总结.doc