2013-04-08 45 views
2

假設我有這樣的數據庫表:獲得價值,並顯示在textviews相對值

Name: A,B,C,D 

Id: 1,2,3,4 

Phone no: 991,928,902,397 

我使用了顯示names.the自動完成代碼自動完成TextView的是在這裏:

final ArrayList<String> s1 = new ArrayList<String>(); 


     for (StudentInfo cn : studentInfo) { 
      s1.add(cn.getName()); 

     } 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,s1); 

     a1.setThreshold(1); 
     a1.setAdapter(adapter); 

這裏a1 is the autocomplete textview。現在如果我選擇從自動完成的名稱TextView的假設B.Then Id和電話無B的是2,902,我想顯示爲2文本view.Here其實我想表現相對ID並在兩個textview t1,t2中輸入電話號碼。

a1.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
        long arg3) { 


} 
     }); 

回答

0

試試這個

採取一個HashMap映射與學生的詳細信息

HashMap<String, StudentInfo> studentdetails=new HashMap<String,StudentInfo>(); 
    for (StudentInfo cn : studentInfo) { 
      s1.add(cn.getName()); 
      studentdetails.put(cn.getName(),cn); 
     } 

名稱和它onItemClick得到這樣

a1.setOnItemClickListener(new OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
        long arg3) { 
        String studentname=arg0.getItemAtPosition(arg2); 

        StudentInfo student=studentdetails.get(studentname); 
        // get values from studen record 

       String id=student.getId(); 
       String phoneNumber=student.getPhone(); 

      } 
     }); 
+0

這對名工作正常的值,如果我像這樣設置t1.setText(studentname);. studentdetails.put(cn.getName(),cn); StudentInfo student = studentdetails.get(studentname);這兩行對於顯示姓名是不必要的。但是,如果我在兩個textview中將其設置爲文本,我如何獲取Id或電話號碼與名稱無關。 – bhoot4242 2013-04-08 07:09:51

+0

@ bhoot4242檢查我的編輯onItemClick – Pragnani 2013-04-08 07:15:23