Я хочу загружать URL один за другим. Я использовал массив String для хранения URL. Мое требование состоит в том, что если веб-просмотр загружает первый url он должен печатать сообщение «страница запущена», когда страница запускается, и когда страница завершается, он должен показывать «страница завершена». После завершения загрузки первого 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.