在我的应用程序中,我们有一个滚动视图,因为我们添加了CheckBox,ComboBox和SingleLineText元素。每个都有单独的类,可以相应地扩展CheckBox,ComboBox和EditText。
在SingleLineText中,我们实现了OnFocusChangeListener()
和override onFocusChange()
方法。如果焦点在第一个单行文本中,并触摸第二个单行文本,则焦点已更改。但是,如果焦点在单行文本中并触摸任何复选框或组合框,则焦点(光标)仍然仅在单行文本中。因此onFocusChange()
尚未调用该方法。
有人可以对这个问题有任何想法吗?
组件(如 CheckBox
)上调用yourEditText.clearFocus();
,ComboBox
单击事件方法,这将强制调用您的onFocusChange()
方法
将其用于清单文件中的活动
android:windowSoftInputMode="adjustPan"
确保通过调用以下代码行从 EditText 中删除焦点。
editText.clearFocus();
并致电
checkBox.requestFocus();