【Android入门到项目实战-- 8.1】—— WebView的用法

本文介绍了如何在Android应用中使用WebView控件展示和渲染Web页面,通过设置JavaScript支持和WebViewClient来实现与服务器的网络交互,加载并显示百度首页作为示例。此外,还提到了WebView的一些潜在缺陷和权限需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        如何在手机端使用HTTP协议和服务器端进行网络交互,并对服务器返回的数据进行解析。

一、WebView

        当我们需要在应用里展示别人的网页,如何简单的实现?肯定不是自己编写一个网页,Android提供了一个WebView控件,借助它可以实现在自己的应用里嵌入一个网页。

WebView的作用

  • 显示和渲染Web页面
  • 直接使用html文件(网络上或本地assets中)作布局
  • 可和JavaScript交互调用

WebView的缺陷

可以参考这篇文章:https://www.cnblogs.com/lee0oo0/p/4026774.html

WebView的使用

那么如何使用WebView?下面通过一个嵌入百度的例子实现。

新建WebViewTest项目,

修改activity_main.xml代码,如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    
    <WebView
        android:id="@+id/web_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
    
</LinearLayout>

修改MainActivity代码,如下:

        getSettings()方法可以设置一些浏览器的属性;setJavaScriptEnabled()方法让WebView支持JavaScript脚本;setWebViewClient()方法作用是当需要从一个网页跳转到另一个网页时,希望目标网页仍然在当前WebView中显示,而不是打开系统浏览器;loadUrl()方法将网址传入,即可展示相应网页内容。

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        WebView webView = (WebView) findViewById(R.id.web_view);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("http://www.baidu.com");
    }
}

最后还需要声明网络权限,修改AndroidManifest.xml文件,如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.example.webviewtest">
    
    <uses-permission android:name="android.permission.INTERNET"/>

............

效果如下:

二、WebView的其他用法

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

四月天行健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值