Android 自动完成文本视图设置隐藏值和可见文本

Android 自动完成文本视图设置隐藏值和可见文本,android,Android,我尝试在android中构建自动完成的文本视图,它的工作很好,但我的问题是我需要获得一个值,我的意思是,我的项目被选中了 我们有学校 abc、bbt、ccce、ddde abc的id=1,学生人数=30 bbt的id=2,学生人数=20人 ccce的id=3,学生人数=50人 ddde的id=4,学生人数=40人 当用户在文本视图中写入abc并选择它时,我需要获得id和学生人数,而不仅仅是abc文本 我的意思是,在html中我们有文本,当选择它时,我们得到的是1,而不是文本,android中是否

我尝试在android中构建自动完成的文本视图,它的工作很好,但我的问题是我需要获得一个值,我的意思是,我的项目被选中了

我们有学校

abc、bbt、ccce、ddde

abc的id=1,学生人数=30

bbt的id=2,学生人数=20人

ccce的id=3,学生人数=50人

ddde的id=4,学生人数=40人

当用户在文本视图中写入abc并选择它时,我需要获得id和学生人数,而不仅仅是abc文本

我的意思是,在html中我们有
文本
,当选择它时,我们得到的是1,而不是文本,android中是否有设置文本的选项,我得到的是值而不是文本

非常感谢

        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_dropdown_item_1line, COUNTRIES);
    AutoCompleteTextView textView = (AutoCompleteTextView)findViewById(R.id.schoolsAutoComp);
    textView.setAdapter(adapter);

    textView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int pos, long id) {
            //pos is the position of the selected item
            Toast toast = Toast.makeText(getApplicationContext(), COUNTRIES[pos], Toast.LENGTH_LONG);
            toast.show();
        }
    });
ArrayAdapter=新的ArrayAdapter(此,
android.R.layout.simple_下拉列表_项目_1行,国家/地区);
AutoCompleteTextView textView=(AutoCompleteTextView)findViewById(R.id.schoolsAutoComp);
setAdapter(适配器);
textView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图arg1、整数位置、长id){
//pos是所选项目的位置
Toast Toast=Toast.makeText(getApplicationContext(),COUNTRIES[pos],Toast.LENGTH\u LONG);
toast.show();
}
});
最终解决方案:

        textView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int pos, long id) {
            String selection = (String) parent.getItemAtPosition(pos);
            int pos2 = -1;

            for (int i = 0; i < COUNTRIES.length; i++) {
                if (COUNTRIES[i].equals(selection)) {
                    pos2 = i;
                    break;
                }
            }
            System.out.println("Position " + pos2); //check it now in Logcat
        }
    });
textView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图arg1、整数位置、长id){
字符串选择=(字符串)parent.getItemAtPosition(pos);
int pos2=-1;
对于(int i=0;i
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父级、视图arg1、整数位置、长id)
{
//pos是所选项目的位置
}
});

抱歉,伙计,我的意思是在html中我们有文本,当选择它时,我们得到的是1,而不是文本..这是我的意思,显示你的国家代码。感谢你的帮助,抱歉迟了回复,我发现解决方案依赖于你的想法,非常感谢。非常感谢,伙计,我得到了一个职位,但问题是给我一个当前列表选项的位置依赖性(字母依赖性由用户设置),而不是原始数组。。是否有解决方案^ ^只需将学生人数存储在一个数组中,以便索引与所需文本匹配,然后通过位置/id访问该数组。是的,我知道mate,但我的意思是,我收到的“位置”是用户写入某些字母时列表视图中的顺序位置,而不是原始数组的位置。。。原始数组中的abc学校是索引5,如果我写一个pos接收到2,当写一个pos接收到0…然后将数组中的位置映射到列表中的位置。我想,我现在必须做简单的解决方案,我将得到一个选中的文本,然后将字符串与数组进行比较,如果我这样做,我可以得到所有选项,非常感谢朋友,
setOnItemClickListener(new OnItemClickListener() {
      @Override
      public void onItemClick(AdapterView<?> parent, View arg1, int pos, long id)
      {
         //pos is the position of the selected item
      }
    });