दिलचस्प पोस्ट
किसी मंडली में अंकों की स्थिति की गणना करना जावा में सॉर्ट किए गए (मेमरी-मैप किए गए?) फ़ाइल में द्विआधारी खोज NSPopover पर NSTextField को संपादित करने में सक्षम नहीं होने के बावजूद भी संपादन योग्य व्यवहार सेट है क्या मुझे बाइट या इंट का उपयोग करना चाहिए? क्लिक पर एक संपादन टेक्स्ट को कैसे साफ़ करें? एक enum के भीतर इन # परिभाषा का उद्देश्य क्या है? अजगर में एक फ़ाइल ढूंढें जावास्क्रिप्ट स्ट्रिंग अपरिवर्तनीय हैं? क्या मुझे JavaScript में "स्ट्रिंग बिल्डर" की आवश्यकता है? फ़ॉर्म इनपुट टेक्स्ट फ़ील्ड में अनुमत वर्णों की सीमा सीमा अपाचे FOP ### को सूर्यसिम के साथ दिखा रहा है कक्षाओं में मदों के आदेश: फ़ील्ड, गुण, कन्स्ट्रक्टर्स, तरीके कई नोड्सल (मोंगोडब और मोंगोस) के साथ कई रिश्ते हैं किसी वेबसाइट पर Google डिस्क में संग्रहीत फ़ाइलों को प्रदर्शित करना (उदा java.lang.illegalstateexception गतिविधि वर्ग एंड्रॉइड खंड में एक विधि (देखें) नहीं मिल सका साधारण गतिशील ब्रेडक्रंब

यूआरएल पर क्लिक करना डिफ़ॉल्ट ब्राउज़र खोलता है

मैंने अपने WebView में एक बाहरी URL लोड किया है अब मुझे क्या चाहिए कि जब उपयोगकर्ता लोड किए गए पेज पर लिंक्स पर क्लिक करता है, तो उसे सामान्य ब्राउज़र की तरह काम करना पड़ता है और उसी WebView में लिंक खोलना पड़ता है। लेकिन यह डिफ़ॉल्ट ब्राउज़र खोल रहा है और वहां पृष्ठ को लोड कर रहा है?

मैंने जावास्क्रिप्ट को सक्षम किया है लेकिन फिर भी यह काम नहीं कर रहा है। क्या मैं कुछ भूल गया हूं?

Solutions Collecting From Web of "यूआरएल पर क्लिक करना डिफ़ॉल्ट ब्राउज़र खोलता है"

अगर आप WebView का उपयोग कर रहे हैं, तो आपको अपने आप क्लिकों को रोकना होगा यदि आप डिफ़ॉल्ट एंड्रॉइड व्यवहार नहीं करना चाहते हैं

आप एक WebViewClient का उपयोग कर WebView में ईवेंट की निगरानी कर सकते हैं जिस विधि को आप चाहते हैं वह है चाहिए shouldOverrideUrlLoading() यह आपको एक विशेष यूआरएल चुना जाता है जब आप अपनी खुद की कार्रवाई करने की अनुमति देता है।

आप setWebViewClient() विधि का उपयोग कर अपने WebView के WebViewClient सेट।

यदि आप एसडीके में WebView नमूना देखते हैं तो एक उदाहरण है जो आप चाहते हैं। यह उतना सरल है:

 private class HelloWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } 

कुछ मामलों में आपको ओआरओआरआर संसाधन के ओवरराइड की आवश्यकता हो सकती है अगर आपको एक रीडायरेक्ट मिलता है जो यूआरएल लोडिंग विधि को ट्रिगर नहीं करता है। इस मामले में मैंने निम्नलिखित की कोशिश की:

 @Override public void onLoadResource(WebView view, String url) { if (url.equals("http://redirectexample.com")) { //do your own thing here } else { super.onLoadResource(view, url); } } 

आधिकारिक प्रलेखन कहते हैं, वेबव्यू में एक लिंक पर क्लिक करें जो कि यूआरएल को संभालने वाला आवेदन पेश करेगा। आपको इस डिफ़ॉल्ट व्यवहार को ओवरराइड करना होगा

  myWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } }); 

या यदि विधि में कोई सशर्त तर्क नहीं है तो ऐसा करें

 myWebView.setWebViewClient(new WebViewClient()); 

अपने कोड में इस 2 लाइनें जोड़ें –

 mWebView.setWebChromeClient(new WebChromeClient()); mWebView.setWebViewClient(new WebViewClient()); 

Arulx जेड का जवाब ठीक उसी प्रकार था जो मैं देख रहा था।

मैं हाइपरलिंक्स पर क्लिक किए जाने के बावजूद ऐप के अंदर वेब ब्राउजिंग रखने के लिए रीसाइक्वेव्यू और वेबदृश्य के साथ नेविगेशन ड्रॉवर वाला एक ऐप लिख रहा हूं (इस तरह बाहरी वेब ब्राउज़र को लॉन्च नहीं किया जाता है) इसके लिए यह निम्नलिखित 2 लाइनों को लागू करने के लिए पर्याप्त होगा:

mWebView.setWebChromeClient(new WebChromeClient()); mWebView.setWebViewClient(new WebViewClient());

बिल्कुल आपके WebView कथन के तहत

यहां मेरे लागू किए गए WebView कोड का एक उदाहरण है:

 public class WebView1 extends AppCompatActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); WebView wv = (WebView) findViewById(R.id.wv1); //webview statement wv.setWebViewClient(new WebViewClient()); //the lines of code added wv.setWebChromeClient(new WebChromeClient()); //same as above wv.loadUrl("http://www.google.com"); }} 

इस तरह, वेबसाइट पर क्लिक किए गए प्रत्येक लिंक आपके वेबविवे के अंदर लोड हो जाएंगे। (सभी एसडीके के अपडेट के साथ एंड्रॉइड स्टूडियो 1.2.2 का उपयोग करना)

विधि boolean shouldOverrideUrlLoading(WebView view, String url) को एपीआई 24 में पदावनत किया गया था। अगर आप नए उपकरणों का समर्थन कर रहे हैं तो आपको boolean shouldOverrideUrlLoading (WebView view, WebResourceRequest request) चाहिए boolean shouldOverrideUrlLoading (WebView view, WebResourceRequest request) उपयोग करना चाहिए।

आप ऐसा कुछ करके दोनों का उपयोग कर सकते हैं:

 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { newsItem.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { view.loadUrl(request.getUrl().toString()); return true; } }); } else { newsItem.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); }