您的位置:首页 > 移动开发 > Android开发

将网页嵌入到android应用中

2015-04-09 15:20 239 查看
[java] view
plaincopy

package com.android.webviewtest;

import android.app.Activity;

import android.os.Bundle;

import android.view.KeyEvent;

import android.webkit.WebSettings;

import android.webkit.WebView;

import android.webkit.WebViewClient;

public class MainActivity extends Activity {

private WebView myWebView ;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//获取webview控件

myWebView = (WebView) findViewById(R.id.webview);

//加载服务器上的页面

myWebView.loadUrl("http://www.baidu.com");

//加载本地中的html

//myWebView.loadUrl("file:///android_asset/www/test2.html");

//加上下面这段代码可以使网页中的链接不以浏览器的方式打开

myWebView.setWebViewClient(new WebViewClient());

//得到webview设置

WebSettings webSettings = myWebView.getSettings();

//允许使用javascript

webSettings.setJavaScriptEnabled(true);

//将WebAppInterface于javascript绑定

myWebView.addJavascriptInterface(new WebAppInterface(this), "Android");

}

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

// Check if the key event was the Back button and if there's history

if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {

myWebView.goBack();

return true;

}

// return true;

// If it wasn't the Back key or there's no web page history, bubble up to the default

// system behavior (probably exit the activity)

return super.onKeyDown(keyCode, event);

}

}

[java] view
plaincopy

package com.android.webviewtest;

import android.content.Context;

import android.webkit.JavascriptInterface;

import android.widget.Toast;

public class WebAppInterface {

Context mContext;

/** Instantiate the interface and set the context */

WebAppInterface(Context c) {

mContext = c;

}

/** Show a toast from the web page */

@JavascriptInterface

public void showToast(String toast) {

Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();

}

}

html代码

[html] view
plaincopy

<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />

这里调用android中的方法

<script type="text/javascript">

function showAndroidToast(toast) {

Android.showToast(toast);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: