Android: 让一个EditText失去焦点,setFocusableInTouchMode与setFocusable 效果不一样

举个例子,根据条件判断是否禁用editText: 

if(a > 3)

{

editText.setFocusableInTouchMode(false);

//editText.setFocusable (false);

 editText.clearFocus();

}

else

{

editText.setFocusableInTouchMode(true);

//editText.setFocusable (true);

 editText.requestFocus();

}

 

一开始我使用的是setFocusable (),但测试发现,当执行了setFocusable (false)后,再执行 setFocusable (true) 无法输入,也获取不了焦点了。

郁闷了,后来试了一下setFocusableInTouchMode(false)后,再执行setFocusableInTouchMode(true),可以正常输入,也能正常获取焦点。

setFocusableInTouchMode 与 setFocusable 之间有什么区别,我不太清楚,但经过测试发现这个区别。

你可能感兴趣的:(android基础)