11

Tôi đang sử dụng điện thoại để phát triển một ứng dụng web cho Android, và vì tôi sẽ có bàn phím riêng trong HTML, tôi cần phải tắt bàn phím hệ thống của Android, ngăn không cho nó hiển thị khi người dùng nhấp vào bất kỳ trường nhập văn bản nào. Tôi không muốn sử dụng trường nhập chỉ đọc hoặc onblur() vì tôi muốn có con trỏ trong văn bản được gửi để người dùng có thể di chuyển vị trí con trỏ trong khi họ nhập dữ liệu vào.Làm thế nào để tắt hoàn toàn bàn phím mềm cho tất cả đầu vào trong Android webview

Vì vậy, tôi muốn tắt hoàn toàn bàn phím của Android theo mặc định, tôi đã thử thêm android:windowSoftInputMode="stateAlwaysHidden" vào manifest.xml nhưng điều này không hoạt động.

Tôi cũng thử sử dụng giao diện javascript từ here, nhưng đã xảy ra sự cố cầu javascript-java trên Android 2.3.x. (link to issue). Vì vậy, tôi vẫn không có một giải pháp tốt ngay bây giờ. Hãy giúp tôi.

Cảm ơn trước vì đã được trợ giúp.

+0

Bạn đã cấu hình 'WebViewClient' và' WebChromeClient' 'cái WebView' không? Tôi đã làm việc trên một dự án đã sử dụng jQuery Mobile và chúng tôi phải cấu hình cả hai dự án để mọi thứ hoạt động bình thường. Bạn có thể phải đánh chặn một sự kiện JS và buộc nó vào trong logic Java trong mã nguồn gốc. Tôi sẽ xem xét điều này và cập nhật cho bạn. –

+0

Cảm ơn lời khuyên, nhưng tôi nghĩ rằng phonegap đã được cấu hình cả webviewclient và webchromeclient. Tôi sẽ tìm hiểu thêm về nó. cảm ơn – kli

+1

Được rồi, hãy xem các đề xuất của tôi bên dưới.Nó không giống như có một cách khá tốt để làm điều này, nhưng sau đó một lần nữa làm bất cứ điều gì đẹp trong Android là gần như không thể trong rất nhiều trường hợp. –

Trả lời

1

OK, bạn đã có một vài tùy chọn! Bạn có thể thử để vô hiệu hóa bàn phím hoàn toàn sử dụng:

  • getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

    • Nếu bạn chọn cách này, hãy chắc chắn để trả lại các thiết lập lại bình thường nếu đó là không thực hiện tự động. Tôi đã không sử dụng điều này trước đây và không thể cho bạn biết nó hoạt động như thế nào, nhưng hãy nhớ điều đó! Bạn không muốn một người sử dụng để trả lời một văn bản mà họ nhận được khi sử dụng ứng dụng của bạn duy nhất đã bàn phím của họ bị vô hiệu hóa :)


  • Bạn có thể sử dụng một cái gì đó tương tự như liên kết theo dõi. Tôi chưa đào sâu nó (tl; dr) nhưng anh ta tạo ra một khung nhìn tùy chỉnh mở rộng từ android.inputmethodservice.KeyboardView và sử dụng nó thay thế.


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