2009-12-23 33 views
11

Tôi có chế độ xem web với biểu ngữ và khi tôi nhấp vào biểu ngữ ở đó sẽ mở một webview thứ hai theo liên kết. Làm thế nào tôi có thể làm điều đó? Tôi đã tạo WebView đầu tiên và nó hiển thị biểu ngữ của tôi nhưng khi tôi nhấp vào nó, nó sẽ mở ra liên kết trong cùng một WebView.Liên kết sự kiện cảm ứng Android WebView

Làm cách nào để có thể nắm bắt bất kỳ sự kiện nào trong WebView khi tôi nhấp vào liên kết cần thực hiện điều gì đó (với liên kết đó)? Giống như shouldStartLoadWithRequest in iPhone.

Cảm ơn bạn,

Wouter

Trả lời

25

Bạn có thể theo dõi các sự kiện trong một WebView sử dụng một WebViewClient. Phương pháp bạn muốn là shouldOverrideUrlLoading(). Điều này cho phép bạn thực hiện hành động của riêng mình khi một URL cụ thể được chọn.

Bạn đặt WebViewClient trong số WebView bằng cách sử dụng setWebViewClient() method.

+0

ok bạn đã chính xác! THANK YOU – wouter88

+0

cách sử dụng shouldOverrideUrlLoading()? vui lòng cung cấp mã mẫu ngắn. –

+6

Got giải pháp ... Nó viết như thế này "class tin HelloWebViewClient kéo dài WebViewClient { @ Override public boolean shouldOverrideUrlLoading (xem WebView, String url) { \t System.out.println (" DDD URL: "+ url.toString()); view.loadUrl (url); trả về true; } } " –

1

shouldOverrideUrlLoading phương pháp tốt, nhưng nếu bạn nhấp vào liên kết currentwebview, khách hàng không gọi đến phương thức shouldOverrideUrlLoading.

Các vấn đề liên quan