Android 在AutoCompleteTextView中,有没有一种方法可以使用选择建议的动作作为按下“的方式?”;输入“;提交建议
我有一个AutoCompleteTextView,当您在TextView中键入内容时,它会给出一个建议列表。但是,当您选择建议时,您仍然必须按Enter键,这样不仅可以从屏幕上删除键盘,还可以提交您选择的建议。我正在尝试删除这个额外的按Enter键步骤,因为用户在我的应用程序中没有建立连接,他们必须在TextView中选择建议后按Enter键。有什么建议/帮助吗 这是我得到的建议,但它似乎不起作用Android 在AutoCompleteTextView中,有没有一种方法可以使用选择建议的动作作为按下“的方式?”;输入“;提交建议,android,autocompletetextview,Android,Autocompletetextview,我有一个AutoCompleteTextView,当您在TextView中键入内容时,它会给出一个建议列表。但是,当您选择建议时,您仍然必须按Enter键,这样不仅可以从屏幕上删除键盘,还可以提交您选择的建议。我正在尝试删除这个额外的按Enter键步骤,因为用户在我的应用程序中没有建立连接,他们必须在TextView中选择建议后按Enter键。有什么建议/帮助吗 这是我得到的建议,但它似乎不起作用 element_image = (ImageView) findViewById(R.id.ele
element_image = (ImageView) findViewById(R.id.element_bullet);
//Get the string array of the radionuclide names that will auto complete.
radionuclideNames = getResources().getStringArray(R.array.radionuclide_names);
//Get a reference to the AutoCompleteTextView in the layout.
radionuclideTextView = (AutoCompleteTextView) findViewById(R.id.radionuclide_autocomplete);
//Create the adapter and set it to the AutoCompleteTextView.
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, radionuclideNames);
//Apply the adapter to the AutoCompleteTextView.
radionuclideTextView.setAdapter(adapter);
//Listen for when enter is pressed.
radionuclideTextView.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
switch(parent.getId())
{
case R.id.radionuclide_autocomplete:
element_image.setImageResource(R.drawable.selectedbulletstate);
break;
}
}
public void onNothingSelected(AdapterView<?> parent) {
//TODO:
}
});
element\u image=(ImageView)findViewById(R.id.element\u项目符号);
//获取将自动完成的放射性核素名称的字符串数组。
放射性核素名称=getResources().getStringArray(R.array.Radio核素名称);
//获取布局中AutoCompleteTextView的引用。
放射性核素文本视图=(自动完成文本视图)findViewById(R.id.radionucleus\u自动完成);
//创建适配器并将其设置为AutoCompleteTextView。
阵列适配器=
新的ArrayAdapter(这是android.R.layout.simple_list_item_1,放射性核素名称);
//将适配器应用于AutoCompleteTextView。
放射性核素TextView.setAdapter(适配器);
//当按下enter键时,请侦听。
放射性核素TextView.setOnItemSelectedListener(新的OnItemSelectedListener(){
已选择公共无效项(AdapterView父项、视图、整型位置、长id){
开关(parent.getId())
{
案例R.id.放射性核素自动完成:
元素\u image.setImageResource(R.drawable.selectedbulletstate);
打破
}
}
未选择的公共无效(AdapterView父项){
//待办事项:
}
});
当然你有这样的东西,用
autoCompleteTextView.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
//TODO:
}
public void onNothingSelected(AdapterView<?> parent) {
//TODO:
}
});
autoCompleteTextView.setOnItemSelectedListener(新的OnItemSelectedListener(){
已选择公共无效项(AdapterView父项、视图、整型位置、长id){
//待办事项:
}
未选择的公共无效(AdapterView父项){
//待办事项:
}
});
尝试以下方法:
auto.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(auto.getWindowToken(), 0);
}
});
auto.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共链接(AdapterView arg0、视图arg1、内部arg2、,
长arg3){
InputMethodManager imm=(InputMethodManager)getSystemService(Context.INPUT\u方法\u服务);
imm.hideSoftInputFromWindow(auto.getWindowToken(),0);
}
});
…但要提交你选择的建议
当您选择其中一个选项时,下拉列表应自动关闭。您将如何具体实现此功能?我正在尝试使用它,但它并没有真正为我做任何事情。是的!这一个有效,尽管我刚刚在别处找到它(另一个答案引导我朝着正确的方向前进)。