大家好我對我的progressbar
有問題。 它不會消失當頁面加載到WebView
任何人都可以請幫忙,因爲我prbiert代碼,但它不起作用 我有XML名稱progressbar(android:id="@+id/progressBar"
)我已經在互聯網上搜索了很多解決方案,但沒有任何幫助加載頁面後隱藏progresbar
public class GenerateQRCodeActivity extends Activity implements OnClickListener{
public static final Uri MailTo = null;
private long lastMoveEventTime = -1;
private int eventTimeInterval = 40;
private ProgressBar progressBar;
private WebView mWebView;
@SuppressLint("SetJavaScriptEnabled")
private String LOG_TAG = "GenerateQRCode";
protected Activity MyActivity;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressBar = (ProgressBar) findViewById(R.id.progressBar);
progressBar.setMax(100);
ImageButton button2 = (ImageButton) findViewById(R.id.button2);
ImageButton button3 = (ImageButton) findViewById(R.id.button3);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebChromeClient(new WebChromeClient());
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.requestFocusFromTouch();
mWebView.getSettings().setRenderPriority(RenderPriority.HIGH);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
mWebView.setBackgroundColor(Color.parseColor("#4dc3f1"));
if (Build.VERSION.SDK_INT >= 11) {
mWebView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
}
mWebView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
webSettings.setDomStorageEnabled(true);
mWebView.setWebViewClient(new WebViewClientDemo());
mWebView.setWebChromeClient(new WebChromeClientDemo());
mWebView.loadUrl("http://www.google.com/");
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new HelloWebViewClient());
getWindow().setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
}
private class WebViewClientDemo extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
progressBar.setVisibility(View.GONE);
progressBar.setProgress(100);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
progressBar.setVisibility(View.GONE);
progressBar.setProgress(0);
}
}
private class WebChromeClientDemo extends WebChromeClient {
public void onProgressChanged(WebView view, int progress) {
progressBar.setProgress(progress);
}
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
else {
finish();
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return true;
}
的[在一個網頁視圖添加進度對話框]可能的複製(http://stackoverflow.com/questions/16849347 /在網絡視圖中添加進度對話框) – Rajesh