2015-10-30 2 views
3

Я хочу добавить прогресс в webView, но когда я попытался добавить индикатор выполнения, следуя this и this, но это настолько запутанно, что я не могу недооценить, что я новичок.Как добавить индикатор выполнения в tab2 webView

я хочу, чтобы добавить индикатор прогресса в моей TAB2 деятельности

package com.freerechargeapp.weebly.free_recharge_app; 


import android.os.Bundle; 
import android.support.annotation.Nullable; 
import android.support.v4.app.Fragment; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.webkit.WebView; 


public class tab2 extends Fragment { 



@Override 
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.tab2, container, false); 





    WebView webView = (WebView) view.findViewById(R.id.webview1); 
    webView.loadUrl("http://google.com"); 



    return view; 



} 

}

вот мой tab2.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" android:layout_height="match_parent"> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 



    <WebView xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/webview1" 
     android:layout_height="match_parent" 
     android:layout_width="match_parent" 


/> 

    <ProgressBar 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:id="@+id/progressBar1"/> 




</RelativeLayout> 

</LinearLayout> 
+0

http://javatechig.com/android/progressbar-while-loading-webv iew –

+0

Пожалуйста, следуйте выше URL –

+0

@IntelliJAmiya Это слишком запутанно, я новичок, я не могу этого понять. – Stevenjobs

ответ

2

Попробуйте этот путь,

public class tab2 extends Fragment { 

WebView webView ; 
ProgressBar progressBar; 

    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 

     View view = inflater.inflate(R.layout.tab2, container, false); 



     webView = (WebView) view.findViewById(R.id.webview1); 
     progressBar = (ProgressBar)view.findViewById(R.id.progressBar1); 
     webView.setWebViewClient(new myWebClient()); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.loadUrl("http://google.com"); 

     return view; 
    } 

public class myWebClient extends WebViewClient 
    { 
     @Override 
     public void onPageStarted(WebView view, String url, Bitmap favicon) { 
      // TODO Auto-generated method stub 
      super.onPageStarted(view, url, favicon); 
     } 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      // TODO Auto-generated method stub 
       progressBar.setVisibility(View.VISIBLE); 
      view.loadUrl(url); 
      return true; 

     } 

     @Override 
     public void onPageFinished(WebView view, String url) { 
      // TODO Auto-generated method stub 
      super.onPageFinished(view, url); 

      progressBar.setVisibility(View.GONE); 
     } 
    } 


} 
+0

Я добавил ваш код, который он говорит, не может решить findViewById (int), вот скриншот из него [screenshot] (http://i.imgur.com/Ud5FRkC.png) @IntelliJ – Stevenjobs

+1

'progressBar = (ProgressBar) view.findViewById (R.id.progressBar1); ' –

+0

@Stevenjobs Проверьте мой выше комментарий –

Смежные вопросы