WebView怎么使用 关于webview加载网页最基本的用法
来源:互联网 发布:linux extension dir 编辑:程序博客网 时间:2024/05/17 06:13
我们都知道webView可以用于去加载网页 , 这里是一点关于webView的用法, 这里主要是 关于它在文字方面的显示 可以设置字体大小 以及最基本的使用
还有一些功能也没有完成, 关于加载完成的回调, 设置一些主要的格式 下面是部分代码, 有详细的注释 , 希望能对刚接触webView的哥们有所帮助
package atguigu.com.bjnews.ui;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import android.util.Log;import android.view.View;import android.webkit.WebSettings;import android.webkit.WebView;import android.webkit.WebViewClient;import android.widget.ProgressBar;import atguigu.com.bjnews.R;import atguigu.com.bjnews.utils.Constants;public class NewsDetailActivity extends Activity implements View.OnClickListener {private WebView webView;private ProgressBar progress_Bar;/*** 临时位置*/private int tempPosition = 3;private WebSettings settings;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_news_detail);initView();String url = getIntent().getStringExtra("url"); //获取从activity传过来得url值url = Constants.BASE_URL + url.substring(url.indexOf("/", 23) + 1); //此处可忽略 ,根据自己的url进行加载Log.e("TAG", "url == " + url);webView = (WebView) findViewById(R.id.webView);settings = webView.getSettings();settings.setJavaScriptEnabled(true); //支持javaScriptsettings.setTextSize(WebSettings.TextSize.SMALLER); //设置默认选择字体webView.loadUrl(url); //加载urlsettings.setBuiltInZoomControls(true);//当加载的页面,是可以缩放的页面的时候,自动显示缩放按钮settings.setUseWideViewPort(true);//当加载的页面,是可以缩放的页面的时候,双击缩放/*** 页面加载完成的时候*/webView.setWebViewClient(new WebViewClient() {@Overridepublic void onPageFinished(WebView view, String url) {super.onPageFinished(view, url);progress_Bar.setVisibility(View.GONE);}});}private void initView() {progress_Bar = (ProgressBar) findViewById(R.id.progress_Bar);findViewById(R.id.tv_base_title).setVisibility(View.GONE);findViewById(R.id.ib_menu).setVisibility(View.GONE);findViewById(R.id.ib_back).setVisibility(View.VISIBLE);findViewById(R.id.ib_textsize).setVisibility(View.VISIBLE);findViewById(R.id.ib_share).setVisibility(View.VISIBLE);/*** 设置监听*/findViewById(R.id.ib_back).setOnClickListener(this);findViewById(R.id.ib_textsize).setOnClickListener(this);findViewById(R.id.ib_share).setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.ib_back: //返回finish();break;case R.id.ib_textsize: //字体设置showTextSizeDialog();break;case R.id.ib_share: //分享break;}}/*** 选择字体大小的dialog*/private void showTextSizeDialog() {String[] items = {"超大字体","大号字体","正常字体","小号字体","超小字体"};new AlertDialog.Builder(this).setTitle("设置字体大小")/*** 设置多选项*/.setSingleChoiceItems(items, tempPosition, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {tempPosition = which;}}).setPositiveButton("确定", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {chooseTextSize(tempPosition);}}).setNegativeButton("取消", null).show();}/*** 选择字体状态*/private void chooseTextSize(int position) {switch (position) {case 0 : //超大号settings.setTextZoom(250);break;case 1 : //大号settings.setTextZoom(200);break;case 2 : //正常settings.setTextZoom(150);break;case 3 : //小号settings.setTextZoom(75);break;case 4 : //超小号settings.setTextZoom(50);break;}}
/**
下面是过时的设置方式setTextSize()
*/
private void changeTextSize(int position) {switch (position){case 0://超大字号settings.setTextSize(WebSettings.TextSize.LARGEST);// webSettings.setTextZoom(WebSettings.TextSize.values().);break;case 1://大字号settings.setTextSize(WebSettings.TextSize.LARGER);break;case 2://正常字号settings.setTextSize(WebSettings.TextSize.NORMAL);break;case 3://小号settings.setTextSize(WebSettings.TextSize.SMALLER);break;case 4://超小号settings.setTextSize(WebSettings.TextSize.SMALLEST);break;}}
下面是布局文件
<?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" android:orientation="vertical"> <include layout="@layout/read_title_bar" /> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent"> </WebView> <!--用background会有两个progressBar--> <ProgressBar android:id="@+id/progress_Bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:indeterminateDrawable="@drawable/comstom_progresssbar" /> </FrameLayout></LinearLayout>
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="50dp" android:background="@drawable/title_red_bg"> <TextView android:id="@+id/tv_base_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:ellipsize="end" android:singleLine="true" android:text="我是标题" android:textColor="@android:color/white" android:textSize="23sp" /> <ImageButton android:id="@+id/ib_menu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="10dp" android:background="@android:color/transparent" android:src="@drawable/img_menu" android:visibility="gone" /> <ImageButton android:id="@+id/ib_back" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="10dp" android:background="@android:color/transparent" android:src="@drawable/back" android:visibility="gone" /> <ImageButton android:id="@+id/ib_switche_mode" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:layout_marginRight="10dp" android:background="@android:color/transparent" android:src="@drawable/icon_pic_grid_type" android:visibility="gone" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:layout_marginRight="10dp" android:orientation="horizontal"> <ImageButton android:id="@+id/ib_textsize" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="10dp" android:background="@android:color/transparent" android:src="@drawable/icon_textsize" android:visibility="gone" /> <ImageButton android:id="@+id/ib_share" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:background="@android:color/transparent" android:src="@drawable/icon_share" android:visibility="gone" /> </LinearLayout></RelativeLayout>
1 0
- WebView怎么使用 关于webview加载网页最基本的用法
- WebView的基本使用方法及 WebViewClient加载网页使用
- 使用WebView加载网页
- WebView网页加载使用
- WebView加载网页基本配置
- WebView的加载网页
- WebView(网页视图)基本用法
- android WebView, WebChromeClient和WebViewClient加载网页基本用法
- android WebView, WebChromeClient跟WebViewClient加载网页基本用法
- android WebView, WebChromeClient和WebViewClient加载网页基本用法
- android使用webview加载网页
- android使用webview加载网页
- android:使用webview加载网页
- 使用WebView自定义加载网页
- android使用webview加载网页
- Android使用WebView加载网页
- 使用Webview加载html网页
- Android使用WebView加载网页
- HDU 3501(欧拉函数)
- 排序算法大汇总
- Linux查看磁盘信息(编写shell脚本来分析文件的占用情况)
- 如何确定一个数二进制中一的个数
- Java之jar打包
- WebView怎么使用 关于webview加载网页最基本的用法
- 使用ViewPager设置适配器FragmentPagerAdapter出现页面空白的问题
- 标签fielderror的使用
- 百度云推送push的使用
- 171. Excel Sheet Column Number | Java最短代码实现
- 事件的响应和对象的引用——outlet和action
- ViewPager 滚动速度设置
- 跟我一起学习MySQL技术内幕(第五版):(第一章学习日记4)
- c++引用深入分析