1. 程式人生 > >EditText焦點的轉換

EditText焦點的轉換

專案要求 有兩個edittext 做語義上傳 :一個提問輸入框 一個回答輸入框 

當做輸入框不為空時,點選確定要判斷是否為空,如果有一個為空,則焦點設定到這個為空的edittext(這個為空的有插值器動畫效果)

// 問題為空 回答不為空
if (mContentAskEt.getText().toString().isEmpty()&& !mContentAnswerEt.getText().toString().isEmpty()){
    mContentAskEt.setFocusable(true);
    mContentAskEt.setFocusableInTouchMode(true
); mContentAskEt.requestFocus(); mContentAskEt.findFocus(); mContentAskEt.setHint("提問語義不能為空"); mContentAskEt.setShakeAnimation(); }else if (mContentAnswerEt.getText().toString().isEmpty() && !mContentAskEt.getText().toString().isEmpty()){ // 回答為空 問題不為空 mContentAnswerEt
.setFocusable(true); mContentAnswerEt.setFocusableInTouchMode(true); mContentAnswerEt.requestFocus(); mContentAnswerEt.findFocus(); mContentAnswerEt.setHint("回答語義不能為空"); mContentAnswerEt.setShakeAnimation(); }else { Toast.makeText(this, "請填寫完整再上傳", Toast.LENGTH_SHORT).show();
}

setFocusable()為true 獲取到焦點
android中,要使控制元件獲得焦點,需要先setFocus,再requestFocus。

本人只是為了自己以後複習 方便,寫的亂,大神繞路,新菜勿怪