好了,所以這個我來到這個解決方案的研究後,讓我知道它是否適合你的工作。 首先你將需要實現一個自定義的EditText 和在XML中添加這種觀點
public class MyEditText extends EditText implements OnClickListener{
public MyEditText(Context context, AttributeSet attrs) {
super(context, attrs);
setOnClickListener(this);
}
public MyEditText(Context context) {
super(context);
setOnClickListener(this);
}
public MyEditText(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setOnClickListener(this);
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
setFocusable(false);
hideKeyBoard();
return true;
}
return super.onKeyPreIme(keyCode, event);
}
private void hideKeyBoard()
{
InputMethodManager imm = (InputMethodManager)getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindowToken(), 0);
}
@Override
public void onClick(View v)
{
v.setFocusable(true);
showKeyBoard();
}
private void showKeyBoard()
{
InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT, 0);
}
}
XML
<com.example.listissue.MyEditText
android:id="@+id/test_text"
android:layout_width="match_parent"
android:text="1234"
android:layout_height="wrap_content"/>
很抱歉,但我不明白你的問題,問題是當你點擊後退按鈕時,你的領域正在失去焦點? –
我想要當我在密碼輸入值編輯文本和完成後按設備然後它會隱藏軟鍵盤,然後我想要密碼編輯文本清除重點 – John