如何处理自动填充Textview项目选择?

时间:2018-01-17 16:12:40

标签: android arrays list autocompletetextview

我使用自动填充功能显示数据库中的狗列表。

假设我有一个带有3个对象的DogList:Dog1,Dog2,Dog3和一个String数组" dogNames"这些狗的每个名字(我用这个数组获取自动完成适配器)。

当选择一个项目而显示完整列表时,我可以通过使用自动完成选择索引从DogList获取它来处理选择的狗,因为" DogList"和#34; dogNames"数组具有相同的大小:

    Dog newDog = new Dog();

    autoComplete_dogs.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

            newDog = dogList.get(i);



        }

问题是当我输入Dog3并单击它时,所选索引为0,这给出了Dog1而不是Dog3,因为Dog1在DogList中有索引0。

我应该如何对DogList进行dinamically排序,使其跟随自动完成结果列表,每次我尝试使用自动完成索引从DogList获取一只狗时,我得到正确的对象?

1 个答案:

答案 0 :(得分:2)

在onItemClick方法中使用此

newDog = adapterView.getItemAtPosition(i);