Android listView数组适配器的EditText onFocusChanged侦听器
在Android listView数组适配器的EditText onFocusChanged侦听器,android,listview,android-edittext,android-arrayadapter,Android,Listview,Android Edittext,Android Arrayadapter,在ListView阵列适配器中执行notifyDataChanged()操作时,我遇到了EditText失去焦点的问题。因此,根据研究,有人说,onFocusChanged()listener可以用来解决这个问题。谁能给我一个代码示例 似乎您需要检查当前edid文本上的焦点是否丢失,并使用一个变量来跟踪并恢复焦点 我尝试了XML的方法,但它没有帮助,所以答案不是这样。下面是您的示例: editText.setOnFocusChangeListener(new OnFocusChangeListe
ListView
阵列适配器中执行notifyDataChanged()
操作时,我遇到了EditText
失去焦点的问题。因此,根据研究,有人说,onFocusChanged()
listener可以用来解决这个问题。谁能给我一个代码示例
似乎您需要检查当前edid文本上的焦点是否丢失,并使用一个变量来跟踪并恢复焦点
我尝试了
XML
的方法,但它没有帮助,所以答案不是这样。下面是您的示例:
editText.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus)
v.requestFocus();
}
}
});
此外,如果尚未将这些属性添加到编辑文本中,请执行以下操作:
android:focusable="true"
android:focusableInTouchMode="true"
另外,您可能需要将android:genderantfocusability=“aftersubstands”
添加到您的listview中。感谢您的回复,我以前尝试过这个,但它不起作用。当我请求焦点时,我在edidtext上获得焦点,但我无法在键盘上键入任何内容。此外,我的edittext只接受数字,因此键盘不会变为数字1。它只是被ASIC键盘卡住了。我可以移动光标,但没有改变。你在编辑文本中使用inputType吗?是的,安卓:inputType=“numberDecimal”删除这一行,你会看到普通键盘。不,删除inputType没有帮助。我还添加了您声明的其他属性,但没有帮助。所以重申一下,当我点击edidtext时,我得到了关注;我看到光标,我可以移动它。但是不能修改任何东西;有一个软键盘。按软键盘上的delete键不会删除任何内容或无法添加任何内容。我还需要数字键盘。这适用于listView阵列适配器。