项目要求 有两个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。
本人只是为了自己以后复习 方便,写的乱,大神绕路,新菜勿怪