Android 如何更新用于在MultiAutoCompleteTextView中存储密钥的ArrayList
我在应用程序中应用了MultiAutoCompleteTextView。大部分功能可能被视为电子邮件应用程序的接收框。我使用带有hashMap的自定义适配器将名称和Id存储为建议源。当用户单击“建议的名称”时,建议列表中将仅显示名称,该Id将以编程方式添加到Id\u listarrayList中,以用于下一个操作 问题是,用户可能点击错误或改变主意 1当用户删除MultiAutoCompleteTextView中的一些名称时,如何更新ArrayListU列表 2如何在multiautocompletetextview中通过一次退格单击而不是一个字符一个字符地删除项目Android 如何更新用于在MultiAutoCompleteTextView中存储密钥的ArrayList,android,textwatcher,multiautocompletetextview,Android,Textwatcher,Multiautocompletetextview,我在应用程序中应用了MultiAutoCompleteTextView。大部分功能可能被视为电子邮件应用程序的接收框。我使用带有hashMap的自定义适配器将名称和Id存储为建议源。当用户单击“建议的名称”时,建议列表中将仅显示名称,该Id将以编程方式添加到Id\u listarrayList中,以用于下一个操作 问题是,用户可能点击错误或改变主意 1当用户删除MultiAutoCompleteTextView中的一些名称时,如何更新ArrayListU列表 2如何在multiautocompl
非常感谢。嗯,我意识到简化的重要性 使用TextWatcher更新ArrayListU列表 inputReceiver.addTextChangedListenernew TextWatcher{ private int noOfCharAdded=0; 私有int noOfCharDeleted=0
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
noOfCharAdded = after;
noOfCharDeleted = count;
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
KEY_MAC = null;
}
@Override
public void afterTextChanged(Editable s) {
if (noOfCharAdded >= 1 && noOfCharDeleted > 1) {
// just input select and backspace
System.out.println("just input select and backspace "
+ receiverList.size());
receiverList.remove(receiverList.size() - 1);
}
}
});
使用onClickListener将光标设置为字符串的结尾
inputReceiver.SetOnClickListener新建OnClickListener{
@Override
public void onClick(View v) {
inputReceiver.setSelection(inputReceiver.getText().length());
}
});
研究暗示。