使用WebView视图显示网页-----迷你浏览器
Android提供了WebView组件,表面上来看,这个组件与普通ImageView差不多,但实际上,这个组件的功能要强大得多,WebView组件本身就是一个浏览器实现,它的内核基于开源WebKit引擎。如果我们对WebView进行一些美化、包装,可以非常轻松地开发出自己的浏览器。
WebView的用法与普通ImageView组件的用法基本相似,它提供了大量方法来执行浏览器操作:
1、void goBack():后退。
2、void goForward():前进。
3、void loadUrl(String url):加载指定URL对应的网页。
4、boolean zoomIn():方法网页。
5、boolean zoomOut():缩小网页。
下面的程序将给予WebView来开发一个简单的浏览器:
该程序的界面中包含两个组件:一个文本框用于接收用户输入想访问的URL;一个WebView用于加载并显示该URL对应的页面。该程序的界面布局代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MiniBrowser" >
<EditText
android:id="@+id/url"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入想访问的URL"
/>
<!-- 显示页面的WebView组件 -->
<WebView
android:id="@+id/show"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
以下程序则主要通过WebView的loadUrl(String url)来加载、显示指定URL对应的页面。
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebView;
import android.widget.EditText;
public class MiniBrowser extends Activity {
EditText url;
WebView show;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mini_browser);
//获取页面中文本框、WebView组件
url = (EditText) findViewById(R.id.url);
show = (WebView) findViewById(R.id.show);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_SEARCH){
String urlStr = url.getText().toString();
//加载并显示urlStr对应的网页
show.loadUrl(urlStr);
return true;
}
return false;
}
}
Android系统自带的·浏览器其实也是基于开源的WebKit引擎实现的。
使用WebView视图显示网页-----迷你浏览器的更多相关文章
- 在当前的webview中跳转到新的url 使用WebView组件显示网页
如果希望点击链接由自己处理,而不是新开Android的系统browser中响应该链接.给WebView加一个事件监听对象(WebViewClient)并重写其中的一些方法:shouldOverride ...
- Android 使用WebView显示网页
构建WebView就可以显示Web信息.因为我觉得这里会讲述很多方式来实现WebView,所以我决定为每一种方式创建一个对应的Activity,MainActivity通过Button可以点击进入对应 ...
- android WebView控件显示网页
有时需要app里面显示网页,而不调用其他浏览器浏览网页,那么这时就需要WebView控件.这个控件也是很强大的,放大,缩小,前进,后退网页都可以. 1.部分方法 //支持javascriptweb.g ...
- Android 之 用WebView显示网页
WebView可以使得网页轻松的内嵌到 app 里,还可以直接跟js相互调用. WebView有两个方法:setWebChromeClient 和 setWebClient (1) setWebCli ...
- 安卓开发_关于WebView使用链接时调用浏览器显示的问题
在我们的实际开发中,我们用到WebView就是为了在自己的APP中的某个部分来显示指定网页的效果. 但是在学习的过程中,我发现一个问题: 有的网页使用WebView控件显示出来以后,再点击网页中的某个 ...
- HTML5学习总结-10 Android 控件WebView显示网页
WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用. webview有两个方法:setWebChromeClient 和 setWebClient 1)setWebClient: ...
- Android:控件WebView显示网页
WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用. webview有两个方法:setWebChromeClient 和 setWebClient setWebClient:主要 ...
- Android:控件WebView显示网页 -摘自网络
WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用. webview有两个方法:setWebChromeClient 和 setWebClient setWebClient:主要 ...
- 强制IE浏览器或WebBrowser控件使用指定版本显示网页
自从装了IE10之后,就发现好些个网站显示都不是那么的正常,网站上有些功能竟然还会出现一些意想不到的BUG——本来就是针对IE开发的,现在IE下竟然用不起来了,让用户情何以堪?但是就为少量用户使用的系 ...
随机推荐
- 你未必知道的css小知识
1:当按百分比设定一个元素的宽度时,它是相对于父容器的宽度计算的,但是,对于一些表示竖向距离的属性,例如padding-top,padding-bottom,margin-top,margin-bot ...
- poj3565Ants(KM-几何与图论的结合)
链接 可以看出蓝的之和一定比红的之和要大,也就是说符合条件的匹配一定是权值最小的,所以二分图的最佳完美匹配..KM #include <iostream> #include<cstd ...
- Debian8系统下,caffe的安装
特此声明:本文不允许用于商业目的,允许转载(注明一下啦). 首先,官方的参考文献为:http://caffe.berkeleyvision.org/installation.html. 现在开始: 安 ...
- [html] Webp、Apng图片格式
WebP格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式.图片压缩体积大约只有JPEG的2/3,并能节省大量的服务器带宽资源和数据空间. 与JPEG相同,WebP是一种有损压缩.但谷 ...
- C# Socket编程(3)编码和解码
在网络通信中,很多情况下:比如说QQ聊天,通讯双方直接传递的都是字符信息.但是字符信息并不能够直接通过网络传输,这些字符集必须先转换成一个字节序列后才能够在网络中传输,于是这里就产生了编码和解码的概念 ...
- POJ 1218
题目描述看着就乐了,死板得只按着题意来写了ps: tequi是escape的方言版.. #include <iostream> using namespace std; int main( ...
- git tag之后如何修改
先 git clone 整个仓库,然后 git checkout tag_name 就可以取得 tag 对应的代码了. 但是这时候 git 可能会提示你当前处于一个“detached HEAD&quo ...
- OpneCV 二值图像区域处理
//--------------------------------------[程序说明]------------------------------------------- // 在图像处理中总 ...
- EF Core » 影子属性
Caution:注意 This documentation is for EF Core. For EF6.x and earlier release see http://msdn.com/data ...
- DBUtils学习
1. DBUtils是JDBC的简单封装,可以和JDBC混合使用. 2. DBUtils对结果集自动封装为JavaBean是有着苛刻要求的:必须满足JavaBean的规范,其次 ...