举个例子,根据条件判断是否禁用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中使用EditText时,setFocusableInTouchMode与setFocusable之间的区别。通过实验发现,当使用setFocusable(false)时,后续使用setFocusable(true)无法正确获取焦点。文章提供了解决方案并解释了两者之间的关键区别。
5044

被折叠的 条评论
为什么被折叠?



