2012-04-10 121 views
0

嘿我堅持1兩件事,我想這樣的一個觀點:在列表視圖中選擇多個項目,更改所選項目的背景顏色

enter image description here

,其中在ListView我可以選擇多個項目和無論哪一個我可以選擇我可以更改backgrond顏色,並將該項目添加到arraylist,以便我可以進一步使用它..

任何人請幫助我在這?

編輯:

現在用這樣的:

 ArrayAdapter<String> part_list_adapter=new ArrayAdapter<String>(AssetSearch.this, R.layout.part_list,R.id.label,part_array_list); 

    PartNumber_List.setAdapter(part_list_adapter); 


     PartNumber_List.setOnItemClickListener(new OnItemClickListener() { 

    @Override 
    public void onItemClick(AdapterView<?> parent, View v, int position, 
      long id) { 
     String item = (String)PartNumber_List.getItemAtPosition(position); 

     Log.i("Item", item); 
     v.setBackgroundColor(R.color.result_image_border); 

    } 
}); 

在這裏,在一個日誌它顯示我的項目點擊only..but改變的2項顏色...

回答

1

嘗試這樣的..

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 
    super.onListItemClick(l, v, position, id); 
    // Get the item that was clicked 
    String item = (String) getListAdapter().getItem(position); 
    boolean blnFound = yourarrayList.contains(item); 
if(blnFound=true){ 
    yourarraylist.remove(item); 
     v.setBackgroundColor(R.color.somecolourtoindicate notselected); 

    } 
    else{ 
      yourarraylist.add(item); 
      v.setBackgroundColor(R.color.somecolourtoindicate itemselected); 
    } 
    yourarraylist.add((String) getListAdapter().getItem(position);) 
} 
+0

但是,這裏仍然有一個問題,當我從listview中選擇一個單一的項目,然後它會自動選擇另一個。當我點擊1項目,它自動改變顏色2 – Kanika 2012-04-10 10:52:24

+0

請檢查我上面編輯的代碼.. – Kanika 2012-04-10 10:55:19

+0

我的線索越來越少..爲什麼2個領域的顏色正在變化..當只有一個項目正在顯示 – 5hssba 2012-04-10 11:13:09

1

你去ŧ o爲列表視圖單元格設置Background for View v,實際列表視圖適配器在滾動視圖時重用單元視圖,因爲該顏色反映在其他一些行單元格中。

只有選項需要將一個圖像視圖添加到視圖保持器,並嘗試更改視圖保持器中圖像視圖的背景,不要更改適配器視圖顏色。

+0

你可以請給我一些提示,如何實施它..我從昨天卡在這裏,並沒有得到任何解決方案呢:( – Kanika 2012-04-11 05:31:10

+0

你需要使用自定義適配器,而不是默認陣列適配器 – Karthi 2012-04-11 05:46:47

+0

請檢查我更新的第二個問題在stackoverflow..am真的與此混淆,並嘗試很多 – Kanika 2012-04-11 06:10:41

相關問題