2012年7月2日 星期一
Android:WebView
XML layout:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="gobrowse"
android:text="網址" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="textPostalAddress"
android:text="http://"/>
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="match_parent" />
AndroidManifest
<uses-permission android:name="android.permission.INTERNET"/>
Source Code
package com.wu;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.EditText;
public class WebviewActivity extends Activity {
/** Called when the activity is first created. */
EditText url;
WebView web;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
url=(EditText)findViewById(R.id.editText1);
web=(WebView)findViewById(R.id.webView1);
//webview事先載入下列網誌,WebView.loadUrl("String")
web.loadUrl("http://www.google.com");
web.getSettings().setJavaScriptEnabled(true);
//在默認設定之下, 如果你點擊一個鏈接, 它會調用Android自帶的瀏覽器打開鏈接. 如果你想繼續使用你自己
的瀏覽器, 可以使用下面的代碼.
web.setWebViewClient(new myClient());
}
//重寫onKeyDown方法,按下返回鍵不會離開此activity
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode==KeyEvent.KEYCODE_BACK&&web.canGoBack()){
web.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
public void gobrowse(View v){
// 可要可不要,標示http://之後輸入的網址
int start="http://".length();
int end=url.getText().toString().length();
url.setSelection(start, end);
String website=url.getText().toString();
web.loadUrl(website);
}
public class myClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
view.loadUrl(url);
return super.shouldOverrideUrlLoading(view, url);
}
}
}
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言