Được biết là difficult để chọn văn bản được chọn trong một WebView vì lựa chọn văn bản WebView thực sự được xử lý bởi một lớp riêng, WebTextView.Lấy văn bản đã chọn trong WebView qua thanh tác vụ theo ngữ cảnh
Tuy nhiên, với bản phát hành gần đây Android 4.0 Design guidelines, dường như có một tia hy vọng đạt được điều này thông qua các thanh hành động theo ngữ cảnh (CAB). Nó says:
Sử dụng CAB bất cứ khi nào bạn cho phép người dùng chọn dữ liệu qua báo chí dài. Bạn có thể kiểm soát nội dung hành động của CAB để chèn các hành động mà bạn muốn người dùng có thể thực hiện.
Tôi có hiểu sai điều này không? Có cách nào để truy xuất văn bản đã chọn từ WebView qua CAB không?
Sau khi chế độ chọn văn bản và nhấp chuột dài bắt đầu, tôi hiện có thể phát hiện khi ActionMode
bắt đầu và sửa đổi bản sao/dán gốc Menu
; tuy nhiên, tôi không thể tìm ra cách thực sự truy xuất văn bản đã chọn.
Hey @octopi, bạn có thể vui lòng cho tôi biết cách bạn thực sự phát hiện khi ActionMode bắt đầu và cách bạn sửa đổi menu? Những gì tôi đạt được là phát hiện một cú nhấp chuột dài và tự khởi động ActionMode, cung cấp một thanh tuỳ chỉnh thông qua 'ActionMode.Callback', nhưng điều đó sẽ không hiển thị các con trỏ chọn văn bản. – davids
@davids. Mà không nói lựa chọn, tôi cũng muốn biết làm thế nào để khiếm khuyết hoặc sửa đổi trình đơn. Tôi có một giải pháp khá xấu nếu bạn không cần sử dụng 'ActionMode' ngoài lựa chọn văn bản. Tôi ghi đè lên 'public ActionMode onWindowStartingActionMode (ActionMode.Callback callback)' trên hoạt động. Nói 'return super.onWindowStartingActionMode (new MyActionModeCallback());'. Nó hoạt động và các con trỏ không biến mất. Tuy nhiên, tôi không biết tác dụng phụ của cách giải quyết này sẽ gây ra điều gì. Tôi có thể nghĩ rằng đó không phải là hệ thống muốn chúng tôi làm. – Yeung
@Yeung tôi cũng có nhu cầu ghi đè thanh tác vụ nhưng cần xử lý lựa chọn – Ravi