• android webview 简单应用


    一直没有用过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

  • 相关阅读:
    动态水母
    jquery封装的方法
    近千部最新英文读物(word 格式)及下载阅读方法
    best tanks
    System Analysic utility tools
    高级商务英语(BEC)阅读题应试指南
    “牛”人是怎样学习的
    领悟
    BEC高级商务英语考试应试技巧指南
    因特网上的英语学习资源
  • 原文地址:https://www.cnblogs.com/sharecenter/p/5621063.html
Copyright © 2020-2023  润新知