19
AutoCompleteTextView mActv = (AutoCompleteTextView) findViewbyId(R.id.m_actv);
ArrayAdapter<String> AutoCompleteAdapter = new ArrayAdapter<String>(this,
                    R.layout.dropdown_text, Names);
mActv.setAdapter(AutoCompleteAdapter);

名称是一个字符串数组。

是否可以获得从下拉列表中选择的文本的索引?

谢谢你。

4

4 回答 4

5

只需将OnItemClickListener(对于单击的项目)或OnItemSelectedListener(对于使用轨迹球,向上/向下键选择的项目)添加到AutoCompleteTextView

mActv.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int pos,
                long id) {
              String item = arg1.getItemAtPosition(pos);
               //your stuff
           }
    });
于 2012-11-20T06:31:22.683 回答
3

为 AutoCompleteTextView 实现 onItemClickListener,然后在列表中使用 indexOf 来查找所选项目的索引。

actvCity.setOnItemClickListener(new OnItemClickListener() {

     @Override
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
          long arg3) {
          int index = cityNames.indexOf(actvCity.getText().toString());
          // Do Whatever you want to do ;)
     }
});
于 2014-11-18T08:55:42.823 回答
2

试试AutoCompleteTextView#getListSelection()

于 2012-11-20T06:29:34.850 回答
0
Item.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    //// id contains item if from database
                    ItemNoSelected = id;
                }
            });

id 来自数据库,我们可以使用它

于 2015-07-07T07:00:37.080 回答