▼Androidメモ▼
Webビュー


Webページを表示するプログラムを作成する。



ソースコード
WebViewEx.java
package net.npaka.webviewex;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

//Webビュー
public class WebViewEx extends Activity {
    
    //アプリの初期化
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        requestWindowFeature(Window.FEATURE_NO_TITLE);

        //Webビューの生成
        WebView webView=new WebView(this);
        webView.setWebViewClient(new WebViewClient(){
            //外部ブラウザを利用しない
            @Override
            public boolean shouldOverrideUrlLoading(WebView view,String url) {
                return false;
            }
            
            //ページ読み込み完了時に呼ばれる
            @Override
            public void  onPageFinished(WebView view, String url) {
                showToast("読み込み完了");
            }
            
            //エラー時に呼ばれる
            @Override
            public void onReceivedError(WebView view,int errorCode,
                String description,String url) {
                showToast("エラー");
            }
        }); 
        setContentView(webView); 
        webView.loadUrl("http://npaka.net");
    }
    
    //トーストの表示
    private void showToast(String text) {
        Toast.makeText(this,text,Toast.LENGTH_SHORT).show();
    }
}

AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="net.npaka.webviewex"
    android:versionCode="1"
    android:versionName="1.0">
    <application 
        android:icon="@drawable/icon" 
        android:label="@string/app_name">
        
        <activity 
            android:name=".WebViewEx"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-sdk android:minSdkVersion="7" />
    
    <uses-permission android:name="android.permission.INTERNET"/>
</manifest> 


アセットHTMLの読み込み
プロジェクトのassetフォルダにHTMLと画像素材を配置し、次のようにアクセス。
webView.loadUrl("file:///android_asset/index.html");


−戻る−