android项目案例3- 基于Android studio的android的fragment网页嵌套

9 篇文章 1 订阅

在上两篇文章   android项目案例2- 基于Android studio的android百度地图   ,  android项目案例1- 基于Android studio的仿微信底部导航栏实现  中介绍了相关的技术,需要的小伙伴可以查看,不懂得可以留言我。

今天来介绍一下   基于Android studio的android的fragment网页嵌套   说通俗一点就是在fragment中嵌入webView部件。

至于效果图如下:

相信大家一看图片就明白了,底部是fragment,fragment中嵌入了webView部件,实现点击底部图片时,跳转到网页中。

接下来进入正题——————》》》》》

1.首先设置UI界面布局。XML文件(在LinearLayout中添加WebView部件)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1">

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


</LinearLayout>

2.Activity的实现。java文件


import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import com.CWT.navigation.R;

public class TabFindFragment extends Fragment {


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {

        //引入我们的布局
        return inflater.inflate(R.layout.fragment_tab_find, container, false);
    }

    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        final WebView browser= (WebView) getActivity().findViewById(R.id.webview);
        WebSettings settings = browser.getSettings();
        browser.getSettings().setJavaScriptEnabled(true);
        browser.getSettings().setUseWideViewPort(true); //将图片调整到适合webview的大小
        browser.getSettings().setLoadWithOverviewMode(true); // 缩放至屏幕的大小
        browser.getSettings().setLoadsImagesAutomatically(true); //支持自动加载图片
        browser.getSettings().setDefaultTextEncodingName("utf-8");//设置编码格式

        // 如果页面中链接,如果希望点击链接继续在当前browser中响应,
        // 而不是新开Android的系统browser中响应该链接,必须覆盖webview的WebViewClient对象
        browser.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url)
            {//  重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
                view.loadUrl(url);
                return true;
            }
        });
        browser.loadUrl("https://www.autohome.com.cn/beijing/");
    }
}

实现的代码很简单,主要是函数onViewCreated中实例化WebView对象,接着对WebView对象进行属性设置,在函数.setWebViewClient中,WebView对象调用函数loadUrl("https://www.autohome.com.cn/beijing/")进行网页链接。

请各位大神指教,本博文内容可能写的有错误,有读者发现错误,可以留言我,希望本博文能够帮到大家。

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值