一直没有用过webView 在网上找了一个小例子,主要实现以下功能:

1、当webview加载网页的时候在标题栏上显示加载进度

2、隐藏webkit浏览器的地址栏

3、设置程序的标题为网页的标题

4、创建菜单

代码:

<span style="font-size:18px;"><span style="font-size:18px;">package com.mywebview;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MenuItem.OnMenuItemClickListener;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient; public class MainActivity extends Activity
{
private final int MENU_ITEM1 = 1;
private final int MENU_ITEM2 = 2; private final int MENU_GROUP = 0; private WebView myWebView;
private final static String url= "http://m.baidu.com/";
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myWebView = (WebView) this.findViewById(R.id.mywebview);
myWebView.getSettings().setJavaScriptEnabled(true); //当webview加载网页的时候在标题栏上显示加载进度
myWebView.setWebChromeClient(new WebChromeClient(){
@Override
public void onProgressChanged(WebView view, int progress) {
//Activity和Webview根据加载程度决定进度条的进度大小
//当加载到100%的时候进度条自动消失
MainActivity.this.setProgress(progress * 100);
}
});
myWebView.loadUrl(url); //隐藏webkit浏览器的地址栏
myWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
} //设置程序的标题为网页的标题
@Override
public void onPageFinished(WebView view, String url) {
if (myWebView.getTitle() != null) {
MainActivity.this.setTitle(myWebView.getTitle());
}
}
});
} @Override
public boolean onCreateOptionsMenu(Menu menu)
{
//刷新
MenuItem aboutMenu=menu.add(MENU_GROUP, MENU_ITEM1, 1 ,"刷新");
aboutMenu.setOnMenuItemClickListener(new OnMenuItemClickListener(){
public boolean onMenuItemClick(MenuItem item) {
MainActivity.this.myWebView.loadUrl(url);
return true;
}
});
//退出
MenuItem exitMenu=menu.add(MENU_GROUP, MENU_ITEM2, 2, "退出");
exitMenu.setOnMenuItemClickListener(new OnMenuItemClickListener(){
public boolean onMenuItemClick(MenuItem item) {
//返回主屏幕
Intent home = new Intent(Intent.ACTION_MAIN);
//在A窗口打开B窗口时在Intent中直接加入标志 Intent.FLAG_ACTIVITY_CLEAR_TOP,这样开启B时将会清除该进程空间的所有Activity。
home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
home.addCategory(Intent.CATEGORY_HOME);
startActivity(home);
finish();
return true;
}
});
return true; // 记得返回true,否则无效 } }
</span></span>
<span style="font-size:18px;"><span style="font-size:18px;">
设置没有标题栏TitleBar</span></span>
<span style="font-size:18px;"><span style="font-size:18px;">
1、在values目录下建立一个style.xml,内容如下
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="NewTheme" parent="@android:style/Theme.NoTitleBar">
</style>
</resources> 2、同时要使得你的网页有上网功能和隐藏TitleBar,则需要在AndroidManifesti.xml中加入
<activity android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar"> 添加访问INTERNET权限
<uses-permission android:name="android.permission.INTERNET" /></span></span>

具体代码见:

http://download.csdn.net/detail/q610098308/8886225

最新文章

  1. IE10,11下_doPostBack未定义错误的解决方法
  2. AC中保存数据与查询数据
  3. salesforce 零基础学习(三十一)关于LookUp字段点击Save时的Validation
  4. Sql Server作业
  5. Delphi之DLL知识学习1---什么是DLL
  6. 在IIS6上部署MVC站点,Nhiernate数据库底层
  7. 单机安装HBase
  8. php文件删除unlink()详解
  9. javascript中document对象的属性和方法
  10. 【BZOJ3884】【降幂大法】上帝与集合的正确用法
  11. 读取Properties配置文件
  12. 执行SQL存储脚本
  13. UVA 10312 - Expression Bracketing(数论+Catalan数)
  14. 乐在其中设计模式(C#) - 工厂方法模式(Factory Method Pattern)
  15. github 教程
  16. Laravel 用户验证Auth::attempt fail的问题
  17. C#实现设置完整虚拟路径
  18. angular 路由的引用
  19. 利用face_recognition库裁取人脸
  20. Nodejs使用robot操作鼠标键盘

热门文章

  1. 编译Python文件(了解)
  2. JS权威指南笔记1
  3. Spring MVC_Hello World
  4. 【Codeforces 464A】No to Palindromes!
  5. BNUOJ 2461 Anniversary party
  6. Remmarguts’ Date(poj 2449)
  7. JSP计数器
  8. token的生成规则
  9. C++模板的特化与偏特化
  10. springMVC和ckeditor图片上传