2009-12-23 21 views
11

मेरे पास बैनर के साथ एक वेबव्यू है और जब मैं बैनर पर क्लिक करता हूं तो लिंक का अनुसरण करने वाला दूसरा वेबव्यू खोलना चाहिए। मैं उसे कैसे कर सकता हूँ? मैंने पहला वेब व्यू बनाया है और यह मेरा बैनर दिखाता है लेकिन जब मैं उस पर क्लिक करता हूं, तो यह उसी वेबव्यू में लिंक खोलता है।एंड्रॉइड वेबव्यू टच इवेंट लिंक

जब मैं किसी लिंक पर क्लिक करता हूं तो उसे वेबव्यू में किसी भी घटना को कैसे पकड़ सकता है (उस लिंक के साथ)? बस shouldStartLoadWithRequest in iPhone की तरह।

आप एक WebViewClient का उपयोग कर एक WebView में घटनाओं की निगरानी कर सकते धन्यवाद,

Wouter

उत्तर

25

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

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

+0

ठीक है आप सही थे! आपको लगता है कि – wouter88

+0

का उपयोग कैसे करना चाहिए IverrideUrlLoading()? कृपया संक्षिप्त नमूना कोड दें। –

+6

समाधान मिल गया ... यह इस प्रकार लिख "निजी वर्ग HelloWebViewClient फैली WebViewClient { @Override सार्वजनिक बूलियन shouldOverrideUrlLoading (WebView देखने के लिए, स्ट्रिंग यूआरएल) { \t println (" DDD यूआरएल: "+ url.toString()); view.loadUrl (url); सही लौटें; } } " –

1

shouldOverrideUrlLoading अच्छी विधि, लेकिन यदि आप current लिंक webview पर क्लिक करते हैं तो ग्राहक shouldOverrideUrlLoading विधि पर कॉल नहीं कर रहा है।

संबंधित मुद्दे