दिलचस्प पोस्ट
JQuery के बीच का अंतर क्या है: टेक्स्ट () और html ()? एल्गोरिथ्म का पता लगाने के लिए दो आयतों के प्रतिच्छेदन? एंड्रॉइड टेक्स्टव्यू जस्टिफ़ टेक्स्ट सभी अपवादों को पकड़ने के लिए C ++ कैसे स्पिनर के चारों तरफ कस्टम स्पिनर को दाएं तरफ नीचे त्रिकोण के साथ बनाने के लिए? JSON पर HTML को मानचित्र दें पायथन में टिल्ड ऑपरेटर MSBuild स्क्रिप्ट और VS2010 प्रकाशित वेब .config रूपांतरण लागू करें रिफैक्टरिंग अगर / अन्य तर्क मैं सरल डेटाबेस और वेबसैक्यिटी के साथ अपने डेटाबेस का उपयोग कैसे करूं? MVC4 सुरक्षा क्या है? क्या अजगर में एक पायदान की लंबाई प्राप्त करने के लिए कोई अंतर्निहित तरीका है? iTextSharp – किसी पृष्ठ पर शब्द की स्थिति कैसे प्राप्त करें जावा में अपने समयक्षेत्र की वर्तमान तिथि और समय कैसे प्राप्त करें? लाइन द्वारा स्ट्रिंग रेखा पढ़ें जावास्क्रिप्ट में फ़ाइल खोलें संवाद बॉक्स

Android WebView प्रगति बार

मैंने इस पर एक प्रश्न यहां देखा है लेकिन जैसा कि मैं एक नौसिखिया हूँ, कोई यह बता सकता है कि यह कैसे एक वेबविवे में काम करने के लिए या कम से कम 10 सेकंड के समय की देरी को कैसे सेट करें ताकि लोगों को पता चल जाए कि यह लोड हो रहा है?

Solutions Collecting From Web of "Android WebView प्रगति बार"

क्षैतिज प्रगति पट्टी के लिए, आपको पहले अपनी प्रगति पट्टी को परिभाषित करने और इसे अपनी XML फ़ाइल से लिंक करने की आवश्यकता है, onCreate :

 final TextView txtview = (TextView)findViewById(R.id.tV1); final ProgressBar pbar = (ProgressBar) findViewById(R.id.pB1); 

उसके बाद, आप अपने WebChromeClient में प्रगति परिवर्तन विधि पर उपयोग कर सकते हैं:

 MyView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int progress) { if(progress < 100 && pbar.getVisibility() == ProgressBar.GONE){ pbar.setVisibility(ProgressBar.VISIBLE); txtview.setVisibility(View.VISIBLE); } pbar.setProgress(progress); if(progress == 100) { pbar.setVisibility(ProgressBar.GONE); txtview.setVisibility(View.GONE); } } }); 

उसके बाद, आपके लेआउट में आपके पास ऐसा कुछ है

 <TextView android:text="Loading, . . ." android:textAppearance="?android:attr/textAppearanceSmall" android:id="@+id/tV1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:textColor="#000000"></TextView> <ProgressBar android:id="@+id/pB1" style="?android:attr/progressBarStyleHorizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:padding="2dip"> </ProgressBar> 

इस तरह मैंने अपने ऐप में यह किया है

मैंने अभी यहां यह कैसे करना है इसका एक बहुत अच्छा उदाहरण पाया है: http://developer.android.com/reference/android/webkit/WebView.html । आपको बस से प्रगति को बदलने की आवश्यकता है:

 activity.setProgress(progress * 1000); 

सेवा मेरे

 activity.setProgress(progress * 100); 

यहां एंड्रॉइड वेब व्यू में प्रगति बार जोड़ने का सबसे आसान तरीका है।

अपनी गतिविधि / टुकड़ा में एक बूलियन फ़ील्ड जोड़ें

 private boolean isRedirected; 

यह बूलियन वेब पेजों के पुनर्निर्देशन को मृत लिंक के कारणों को रोकेगा। अब आप केवल इस विधि में अपना वेबविय ऑब्जेक्ट और वेब यूआरएल पास कर सकते हैं।

 private void startWebView(WebView webView,String url) { webView.setWebViewClient(new WebViewClient() { ProgressDialog progressDialog; public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); isRedirected = true; return false; } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); isRedirected = false; } public void onLoadResource (WebView view, String url) { if (!isRedirected) { if (progressDialog == null) { progressDialog = new ProgressDialog(SponceredDetailsActivity.this); progressDialog.setMessage("Loading..."); progressDialog.show(); } } } public void onPageFinished(WebView view, String url) { try{ isRedirected=true; if (progressDialog.isShowing()) { progressDialog.dismiss(); progressDialog = null; } }catch(Exception exception){ exception.printStackTrace(); } } }); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl(url); } 

यहां लोड होने पर, यह फोन पर कॉल onPageStarted । यहां मैं बूलियन फील्ड सेट कर रहा हूं I लेकिन जब पेज लोड खत्म होता है तो यह पेज पर onPageFinished विधि पर आ जाएगा और यहां बूलियन फील्ड सही पर सेट है। कभी-कभी यूआरएल मर जाने पर इसे पुनर्निर्देशित किया जाएगा और यह onPageFinished विधि से पहले onPageFinished आ जाएगा। इस कारण से यह प्रगति बार छिपा नहीं करेगा इसे रोकने के लिए मैं जाँच कर रहा हूँ if (!isRedirected) onLoadResource()

प्रगति संवाद को खारिज करने से पहले onPageFinished() विधि में आप अपना 10 सेकंड समय देरी कोड लिख सकते हैं

बस। हैप्पी कोडिंग 🙂

यह सच है, वहाँ भी अधिक विकल्प हैं, जैसे आप चाहते हैं कि एक वाक्य के लिए ऐप के नाम को बदलना। इस ट्यूटोरियल की जांच कर सकते हैं यह मदद कर सकता है:

http://www.firstdroid.com/2010/08/04/adding-progress-bar-on-webview-android-tutorials/

उस ट्यूटोरियल में आपके पास एक पूर्ण उदाहरण है कि वेबव्यू ऐप में प्रगति पट्टी कैसे उपयोग करें।

एड्रियन।

श्रीमान साजिद करीम के अनुसार मैंने एक समान लिखा था।

 webView = (WebView) view.findViewById(R.id.web); progressBar = (ProgressBar) view.findViewById(R.id.progress); webView.setWebChromeClient(new WebChromeClient()); webView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); progressBar.setVisibility(View.VISIBLE); } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); progressBar.setVisibility(View.GONE); } @Override public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) { super.onReceivedError(view, request, error); Toast.makeText(getActivity(), "Cannot load page", Toast.LENGTH_SHORT).show(); progressBar.setVisibility(View.GONE); } }); webView.loadUrl(url); 

प्रक्रिया समाप्त होने तक प्रतीक्षा करें …

 while(webview.getProgress()< 100){} progressBar.setVisibility(View.GONE); 
  webview= (WebView) findViewById(R.id.web); webview.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int progress) { WebActivity .setTitle("Loading..."); WebActivity .setProgress(progress * 100); if(progress == 100) WebActivity .setTitle(R.string.app_name); } }); webview.setWebViewClient(new WebViewClient()); webview.getSettings().setJavaScriptEnabled(true); webview.loadUrl("http://google.com"); 

अधिक संदर्भ के लिए यहां क्लिक करें http://androiddhina.blogspot.in/2015/05/android-load-webview-with-progressbar.html