2013-08-16 42 views
1

我目前正在试图在Web视图当前正在加载时进行轮子进度条显示。我的代码有一些麻烦。任何想法是什么是错的或缺少我的代码?ProgressBar没有显示

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getWindow().requestFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
     setContentView(R.layout.activity_main); 

这是我在网络上观看部分代码。

setProgressBarIndeterminateVisibility(true); 
    wv1 = (WebView)findViewById(R.id.wv1); 
    wv1.getSettings().setJavaScriptCanOpenWindowsAutomatically(false); 
    wv1.getSettings().setSupportZoom(false); 
    wv1.getSettings().setSupportMultipleWindows(false); 
    wv1.setHorizontalScrollBarEnabled(false); 
    wv1.setVerticalScrollBarEnabled(false); 
    wv1.getSettings().setUseWideViewPort(true); 
    wv1.getSettings().setLoadWithOverviewMode(true); 


    final Activity activity = this; 

    wv1.setWebViewClient(new WebViewClient() { 
     public boolean shouldOverrideUrlLoading(WebView viewx, String urlx) { 
      viewx.loadUrl(urlx); 
      return false; 
     } 

     public void onProgressChanged (WebView view, int progress){ 
      activity.setTitle("Loading.."); 
      activity.setProgress(progress * 100); 

      if (progress == 100) 
       setProgressBarIndeterminateVisibility(false); 
      activity.setTitle("My Title"); 
     } 
    } 

      ); 



    wv1.loadUrl(nFeed); 
+0

您应该使用ProgressDialog并在WebViewClient的onPageFinished()中解除()它。 –

回答

0

您应该加载在一个异步任务web视图并在onpreexecute方法中添加进度条,然后关闭它在onPostexecute方法

0

凯姆·康纳的答案是不正确。乍一看你的代码看起来没问题。

你知道这个装载轮应该显示在操作栏上吗?你的应用有(大)动作栏吗?