是否可以阻止用戶關閉軟鍵盤。換句話說,當我的活動可見時,屏幕上始終可以使用鍵盤(始終)。這可能嗎?如果是這樣,你將如何實現它?Android阻止鍵盤關閉
3
A
回答
0
你需要重寫onKeyUp()
和onKeyDown()
方法,如下面,
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK)
{
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput
(InputMethodManager.SHOW_FORCED,InputMethodManager.HIDE_IMPLICIT_ONLY);
}
return super.onKeyUp(keyCode, event);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK)
{
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput
(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
}
return super.onKeyDown(keyCode, event);
}
您也可以嘗試在兩種方式,通過使用OnEditorActionListener
,看看下面的代碼,
EditText txtMyEdit = (EditText) findViewById(R.id.txtEdit);
txtMyEdit.setOnEditorActionListener(new OnEditorActionListener()
{
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
if (actionId == EditorInfo.IME_ACTION_DONE)
{
// your additional processing...
return true;
}
else
{
return false;
}
}
});
+1
這在某種程度上起作用,唯一的問題是焦點的變化仍然會導致鍵盤被解僱。我需要鍵盤始終保持在屏幕上。 –
0
這應該強制鍵盤顯示與焦點無關:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(yourViewObject.getWindowToken(), 0);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);
相關問題
- 1. Android關閉鍵盤
- 2. Android鍵盤阻止EditText
- 3. 阻止Android應用。關閉
- 4. Android:阻止虛擬鍵盤上的鍵
- 5. Android鍵盤不關閉
- 6. 關閉鍵盤
- 7. 關閉鍵盤
- 8. 阻止隱藏視圖的鍵盤android
- 9. Android - requestFocus開關鍵盤關閉
- 10. 如何防止React Native關閉鍵盤
- 11. 停止UISearchDisplayController關閉搜索欄鍵盤
- 12. Flash + Chrome =鍵盤阻止?
- 13. WPF阻止鍵盤調用
- 14. MFMessageComposeViewController關閉鍵盤
- 15. 關閉iPad鍵盤
- 16. 關閉UITextField鍵盤?
- 17. 關閉iphone鍵盤
- 18. UIKeyboardTypeNumberPad關閉鍵盤
- 19. MonoTouch.Dialog:關閉鍵盤
- 20. 關閉鍵盤數字鍵盤
- 21. 的Android關閉鍵盤順利
- 22. 如何在Android SearchView中關閉鍵盤?
- 23. 關閉Android鍵盤上開始
- 24. Android軟鍵盤:「完成」「關閉」
- 25. Android檢測到軟鍵盤關閉
- 26. 關閉android默認鍵盤onClick EditText
- 27. 關閉輸入焦點的Android鍵盤
- 28. 防止分割鍵盤並阻止它
- 29. 阻止應用關閉
- 30. 如何阻止fancyBox關閉?
你試過了什麼? – Sieryuu
將Android:windowSoftInputMode =「stateAlwaysVisible」添加到AndroidManifest.xml中的活動定義中。還嘗試過使用InputMethodManager的各種組合,沒有任何工作。 –