Android网络编程实践之旅(四):使用WebView浏览网页
来源:互联网 发布:淘宝客的趋势sina 编辑:程序博客网 时间:2024/06/06 03:45
WebView控件是对WebKit进行封装的java接口,而WebKit是一个开源浏览器的网页排版引擎,更多关于WebKit的信息看点击打开链接。
新建工程WebViewDemo,不赘述。核心文件有三个,贴出如下:
1)、Activity文件WebViewDemoActivity.java:
package com.android.webviewdemo;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.View;import android.view.View.OnClickListener;import android.view.View.OnKeyListener;import android.webkit.URLUtil;import android.webkit.WebSettings;import android.webkit.WebView;import android.widget.Button;import android.widget.EditText;public class WebViewDemoActivity extends Activity {private EditText mUrl;private Button mConnect;private WebView mWebView; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mWebView = (WebView)findViewById(R.id.webview); mUrl = (EditText)findViewById(R.id.url); mConnect = (Button)findViewById(R.id.connect); /** * 设置WebView的属性 */ WebSettings webSettings = mWebView.getSettings(); webSettings.setJavaScriptEnabled(true); //支持Javascript脚本语言 webSettings.setAllowFileAccess(true); //允许WebView访问文件数据 webSettings.setBuiltInZoomControls(true); //支持内容缩放控制 mConnect.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubopenNetPage();} }); mUrl.setOnKeyListener(new OnKeyListener(){@Overridepublic boolean onKey(View v, int keyCode, KeyEvent event) {// TODO Auto-generated method stubif(keyCode == KeyEvent.KEYCODE_ENTER){openNetPage();return true;}return false;} }); } private void openNetPage(){ String url = mUrl.getText().toString();if(URLUtil.isNetworkUrl(url)){mWebView.loadUrl(url);}else{mUrl.setText("address error, input again!");} } /** * 若多次打开网页,支持网页返回到上一级 */@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {// TODO Auto-generated method stubif((keyCode == KeyEvent.KEYCODE_BACK) && (mWebView.canGoBack())){mWebView.goBack();return true;}return super.onKeyDown(keyCode, event);}}
2)、布局文件main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:animationCache="true" android:layout_weight="9"> <EditText android:id="@+id/url" android:layout_width="wrap_content" android:layout_weight="9" android:layout_height="wrap_content" android:lines="1" android:inputType="textUri" android:imeOptions="actionGo" /> <Button android:id="@+id/connect" android:layout_width="wrap_content" android:layout_weight="1" android:layout_height="wrap_content" android:text="connect" /> </LinearLayout> <WebView android:id="@+id/webview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1"/></LinearLayout>
3)、Manifest文件AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.webviewdemo" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:label="@string/app_name" android:name=".WebViewDemoActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-permission android:name="android.permission.INTERNET"/></manifest>
使用注意事项:
1)、需在AndroidManifest.xml文件中添加网络访问权限:
<uses-permission android:name="android.permission.INTERNET"/>否则会提示网络无法访问。
2)、需要时能Javascrip脚本语言,否则很多网页上用Javascript编写的对话框无法打开。
3)、关于为WebView添加辅助处理各种通知和请求的类WebViewClient,添加辅助处理Javascrip对话框、图标、加载进度条等的类WebChromeClient的内容,有兴趣的XDJM自己去琢磨琢磨了。
- Android网络编程实践之旅(四):使用WebView浏览网页
- Android使用WebView浏览网页
- 使用WebView浏览网页
- 使用 WebView 浏览网页
- Android网络编程实践之旅(五):利用系统浏览器打开网页
- 使用WebView控件浏览网页
- Android网络编程之WebView
- Android--在程序里浏览网页/Webview的使用
- Android学习笔记50:使用WebView控件浏览网页
- Android学习笔记50:使用WebView控件浏览网页
- Android开发实践(三)WebView(网络视图)使用实例
- Android网络编程实践之旅
- 安卓基础:使用WebView浏览网页
- Android之Http网络编程(四)
- Android基础知识(四)之网络编程
- Android之网络编程(一)WebView 的用法
- Android网络编程之webview开发
- Android网络编程之WebView【实例解析】
- 编译sqlite
- DirectShow介绍
- 代码隐藏类cs与aspx的关系
- ubuntu10.10 Qt creater安装——实测可用
- JavaScript 执行顺序
- Android网络编程实践之旅(四):使用WebView浏览网页
- 《一个操作系统的实现》读后感ˇˇˇ
- Windows Mobile 5/6 软件网站介绍 Pocket PC 大本营
- shared_ptr使用注意事项
- android 文件操作
- window下svn的服务器VisualSVN Server
- C++派生类对象模型
- 设计模式Iterator
- System.Environment类应用小技巧