-5
我想在android中創建讀取4個字符密碼的視圖。當用戶按下退格鍵時,我想要關注prev元素。當所選視圖爲空時,是否有可能捕獲退格事件?在Android中創建密碼視圖
我也想在輸入最後一個字符後關閉/隱藏鍵盤。可能嗎?
我想在android中創建讀取4個字符密碼的視圖。當用戶按下退格鍵時,我想要關注prev元素。當所選視圖爲空時,是否有可能捕獲退格事件?在Android中創建密碼視圖
我也想在輸入最後一個字符後關閉/隱藏鍵盤。可能嗎?
我已經覆蓋安其& onFocusChange功能和使用ZeroWidthString(「\ u200B」)來捕獲軟鍵盤刪除事件。以下是代碼嗅探
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_UP) {
TextView tv = (TextView) v;
if (keyCode == KeyEvent.KEYCODE_DEL){
if (tv.getText().toString().equalsIgnoreCase(ZeroWidthString))
moveToPrevField();
else
tv.setText(ZeroWidthString);
}
}
}
@Override
public void onFocusChange(View v, boolean hasFocus) {
TextView tv = (TextView) v;
if (hasFocus) {
tv.setText(ZeroWidthString);
}
else if (tv.getText().toString().equalsIgnoreCase(ZeroWidthString)) {
tv.setText("");
}
}
要捕獲backspace
,它實際上是android中的刪除鍵。您可以通過
editText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_DEL){
//delete key pressed
}
return false;
}
});
捕捉它隱藏鍵盤試試這個
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
發佈你的一些代碼,讓我們看看它出錯了! – Panther 2014-10-30 13:49:12
嗨豹我更新了代碼的問題。即使調用clearFocus();軟鍵盤沒有關閉,關於退格鍵,你可以讓我知道我們如何捕獲它。 – 2014-10-30 13:58:00