我有一個EditText
,我想如果選擇點擊一切以兩種方式的Android刪除選擇的EditText後長按
- 使用,用戶可以改變 輸入。
- 當長按一下文字顏色變化,其餘 沒有發生用戶。
我試圖清除它的焦點,但每次我放開後,長時間點擊一切都被選中。可能是因爲XML文件中的android:selectAllOnFocus="true"
。但我確實希望在用戶剛接觸ET時選擇所有選項,但不要在長時間按下之後選擇。
,我已經這麼遠的代碼是:
main.java
ET = (EditText) findViewById(R.id.someET);
ET.setRawInputType(Configuration.KEYBOARD_12KEY);
ET.setOnEditorActionListener(new DoneOnEditorActionListener());
ET.setOnLongClickListener(new myLongClickListener());
class DoneOnEditorActionListener implements OnEditorActionListener {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
v.clearFocus();
InputMethodManager imm = (InputMethodManager)v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
return true;
}
return false;
}
}
class MyLongClickListener implements OnLongClickListener{
private boolean locked = false;
@Override
public boolean onLongClick(View view) {
if(locked){
((EditText)view).setTextColor(0xFF000000);
} else {
((EditText)view).setTextColor(0xFFFF0000);
}
locked =! locked;
return true;
}
}
的DoneOnEditorActionListener是存在的,當用戶按下輸入/完成按鈕的ET會失去焦點,鍵盤將隱藏。