【Android开发】Android Studio中进行简单的WebView构建浏览器开发1

Android Studio 安装详见《【Android开发】Android入门安装与使用教程——以Android Studio3.6.1为例》

第一步:新建一个Android Project

第二步:修改AndroidMainfest.xml文件

我们在使用WebView的时候,需要用到网络权限,因此需要在AndroidMainfest.xml添加以下代码:

    <!-- 添加网络权限 -->
    <uses-permission android:name="android.permission.INTERNET" />

代码插入位置如下:
在这里插入图片描述

第三步:在布局文件activity_main.xml添加WebView控件对象

因为后续的java代码需要绑定该控件,所以我们要指定控件id,也就是android:id="@+id/myweb"是必须加上去的

    <WebView
        android:id="@+id/myweb"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />

代码插入位置如下:
在这里插入图片描述

第4步:修改MainActivity.java文件

首先要通过import导入相应的java package——android.os.Bundleandroid.webkit.WebViewandroid.webkit.WebViewClient
然后在void onCreate(Bundle savedInstanceState)函数内部添加代码:

  • 获得控件
WebView mw = (WebView) findViewById(R.id.myweb);
  • 调用成员函数loadUrl装入网页链接
mw.loadUrl("https://www.baidu.com/");
  • 调用成员函数setWebViewClient加载网页,为了能够直接通过WebView显示网页重写WebViewClient的shouldOverrideUrlLoading()方法
mw.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                // 重写WebViewClient的shouldOverrideUrlLoading()方法
                //使用WebView加载显示url
                view.loadUrl(url);
                //返回true
                return true;
            }
        });

完整的MainActivity.java文件代码如下:

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获得控件
        WebView mw = (WebView) findViewById(R.id.myweb);
        // 调用成员函数访问网页,加载资源
        mw.loadUrl("https://www.baidu.com/");
        // //系统默认会通过手机浏览器打开网页,为了能够直接通过WebView显示网页,则必须设置
        mw.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                // 重写WebViewClient的shouldOverrideUrlLoading()方法
                //使用WebView加载显示url
                view.loadUrl(url);
                //返回true
                return true;
            }
        });

    }
}

第5步:编译调试

点击运行按钮,调试结果如下:
在这里插入图片描述

【作者简介】陈艺荣,男,目前在华南理工大学电子与信息学院广东省人体数据科学工程技术研究中心攻读博士,担任IEEE Access、IEEE Photonics Journal的审稿人。两次获得美国大学生数学建模竞赛(MCM)一等奖,获得2017年全国大学生数学建模竞赛(广东赛区)一等奖、2018年广东省大学生电子设计竞赛一等奖等科技竞赛奖项,主持一项2017-2019年国家级大学生创新训练项目获得优秀结题,参与两项广东大学生科技创新培育专项资金、一项2018-2019年国家级大学生创新训练项目获得良好结题,发表SCI论文4篇,授权实用新型专利8项,受理发明专利13项。
我的主页
我的Github
我的CSDN博客
我的Linkedin

  • 6
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

YirongChen

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

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

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

打赏作者

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

抵扣说明:

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

余额充值