我想一個一個地加載URL。我使用String數組來存儲URL。我的要求是,如果webview加載第一個url,它應該打印msg的「啓動頁面」時頁面開始,當頁面完成時它應該顯示「頁面已完成」。第一次加載完成後,它應該加載第二個URL並繼續執行相同的過程。如何逐個加載URL
我寫的代碼如下:
package com.browser;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.util.Log;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class browser extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final String[] url={"http://www.yahoo.com","http://www.google.com","http://www.ibnlive.com"};
final MyWebView mwv = new MyWebView(this);
mwv.setWebViewClient(new myweb());
new Thread(new Runnable(){
public void run(){
Log.d("runThread","runthread");
for(int i=0;i<2;i++){
openbrowser(url[i]);
}
}
private void openbrowser(String url) {
mwv.getSettings().setJavaScriptEnabled(true);
mwv.loadUrl(url);
Log.d("",""+url);
setContentView(mwv);
}
}).start();
}
public class MyWebView extends WebView{
public MyWebView(Context context) {
super(context);
}
}
public class myweb extends WebViewClient{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
System.out.println("LOADING");
return false;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
System.out.println("PageStarted: " + url);
}
@Override
public void onPageFinished(WebView view, String url){
System.out.println("PageFinished: " + url);
}
}
}
///indented code <--remove this
它加載只有最後一個URL。
@Agarwal Shankar我試過你的代碼,但第一次運行時,我得到一個強制關閉。我錯過任何東西在main.xml文件?我不熟悉你提出的代碼類型。 – HenryW 2012-05-29 18:12:16