2013-04-22 104 views
0

我正在開發一個android應用程序的小應用程序,並且需要顯示一個客戶列表。 其實我做了一個查詢(通過使用遊標對象),結果,它會輸出客戶ID和客戶名稱。Android - 帶有特定ID的ListView項目

我需要在ListView中顯示客戶名稱,同時,當用戶點擊列表上的客戶時,我可以獲取相關的ID。

任何人都可以幫助我嗎?

+1

儲存在列表視圖視圖的標籤屬性ID和檢索它http://stackoverflow.com/問題/ 5642381/listview-and-hidden-id-how-it-is-possible – Simon 2013-04-22 18:32:35

+1

你有沒有嘗試過任何東西?你的列表適配器代碼在哪裏? – Phil 2013-04-22 18:43:07

+0

另一種方法是重寫適配器中的getItemId(),並返回保存唯一標識的列的數據。如果您爲該值使用默認的'_id'列,那麼您可以跳過這一步。然後id將作爲參數傳遞給每個列表項:click onItemClick(AdapterView parent,View view,int position,long id)'。不幸的是,如果你的唯一ID是一個數字值而不是一個字符串,這隻會有效。 – 2013-04-22 19:17:01

回答

1

只需按照以下步驟

  1. 做有兩個變量,如名稱和ID類名的簡單類:客戶

  2. 現在做一個適配器類擴展底座適配器重寫getView方法和設置客戶的文字(名稱)

  3. 處理點擊的ListView中onitemclick方法

因此,繼承人一個示例代碼

傳遞適配器的 的ArrayList <客戶>

所以,現在你的列表視圖將客戶對象

點擊你會得到客戶的對象,請使用父.itematposition(position) 將此方法的結果轉換爲與客戶相同的結果

Customer c =(Customer)parent.itematposition(position);

System.out.print(c.getId + c.getName());

public class Customer { private Sting name; 私人字符串ID;

提供setter和getter爲它們兩者以使它們可以在上面

在的onClick使用}