Спасибо за попытку решить мою проблему!
В настоящее время мое приложение в основном загружает веб-страницу с помощью Android Web view. Недостатком является то, что иногда (при плохом соединении) загрузка веб-страницы занимает более 10 секунд. Есть ли способ создать что-то вроде всплеска XML "загрузочного" экрана во время загрузки веб-страницы?
Взгляните на мой код...
package com.ect;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.webkit.CookieSyncManager;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
public class SomeActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//THIS IS WHAT I WANT: setContentView(R.layout.main);
CookieSyncManager.createInstance(getBaseContext());
// Let's display the progress in the activity title bar, like the
// browser app does.
getWindow().requestFeature(Window.FEATURE_PROGRESS);
WebView webview = new WebView(this);
setContentView(webview);
webview.getSettings().setJavaScriptEnabled(true);
final Activity activity = this;
webview.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
// Activities and WebViews measure progress with different scales.
// The progress meter will automatically disappear when we reach 100%
activity.setProgress(progress * 1000);
}
});
webview.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
//Users will be notified in case there's an error (i.e. no internet connection)
Toast.makeText(activity, "Oh no! " + description, Toast.LENGTH_SHORT).show();
}
public void onPageFinished(WebView view, String url) {
CookieSyncManager.getInstance().sync();
}
});
CookieSyncManager.getInstance().startSync();
CookieSyncManager.getInstance().sync();
//This will load the webpage that we want to see
webview.loadUrl("http://www.web.com/");
}
}
Это мой код. Если вы внимательно посмотрите, я сделал комментарий, который гласит: "ЭТО ТО, ЧТО Я ХОЧУ: ..."
Этот комментарий вызывает отображение файла main.xml, но если я использую этот комментарий, файл main.xml будет отображаться, но веб-просмотр так и не появится...
Как я могу отобразить файл main.xml, а затем (после загрузки веб-просмотра) показать веб-страницу?