2012-12-04 41 views
0

我有一個顯示某些項目的ListView這樣對話與ListView控件不返回正確的ID

d = new Dialog(this); 
d.setContentView(R.layout.dialog_layout); 
d.setTitle("Select Bowler " + String.valueOf(bakerList.size()+1)); 

ListView lv3 = (ListView)d.findViewById(R.id.dialog_list); 
Cursor c3 = getContentResolver().query(TeamBowlers.CONTENT_URI,new String[] {TeamBowlers.ID,TeamBowlers.SUB,TeamBowlers.BOWLER_ID,TeamBowlers.CAPTAIN} 
    ,TeamBowlers.TEAM_ID + "=?",new String[] {String.valueOf(teamSelectedID)},TeamBowlers.POSITION + " ASC");          

if(c3.moveToFirst() && c3 != null){ 
    SimpleCursorAdapter adapter2 = new ImageAdapter(this,R.layout.row,c3 
      ,new String[] {TeamBowlers.ID,TeamBowlers.SUB,TeamBowlers.BOWLER_ID},new int[] {R.id.icon,R.id.bowler_txt,R.id.bowler_txt2}); 

    lv3.setAdapter(adapter2); 
    lv3.setOnItemClickListener(new OnItemClickListener(){ 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View v,int position, long id) { 
      bakerList.add(id); 
      updateName(id); 
     } 

    }); 
    d.show(); 
} 

問題的對話是,當我在列表中單擊一個項目被返回的ID不基本上它只是從數據庫返回索引。

爲什麼它不綁定我的數據庫的「_id」列?

回答

0
why is it not binding my "_id" column of my database? 

我想這不是真的。在onItemClickid實際上是在列表視圖中row id,如果你想要的行數據,你可以做一些這樣的事情在onItemClick

Cursor cursor = ((SimpleCursorAdapter) arg0).getCursor(); 
cursor.moveToPosition(position); 
long _id= cursor.getLong(cursor.getColumnIndex("id"); 
+0

它不是來自你的cursor

id這結束了不成爲我的問題,但我也最終返回了正確的身份證以便知道這個工作 – tyczj