2012-11-20 31 views
4

我有一個ListActivity如何設置檢查項目的背景在多選模式列表視圖中的Android

public class MyActivity extends ListActivity{ 

    protected void onCreate(Bundle savedstate){ 
     super.onCreate(savedstate); 
     getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL); 
     getListView().setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() { 


     public boolean onPrepareActionMode(ActionMode mode, Menu menu) { 
      Log.i("xxx", "onPrepareActionMode"); 
      return false; 
     } 


     public void onDestroyActionMode(ActionMode mode) { 
      // TODO Auto-generated method stub 

     } 


     public boolean onCreateActionMode(ActionMode mode, Menu menu) { 
      // TODO Auto-generated method stub 
      return true; 
     } 


     public boolean onActionItemClicked(ActionMode mode, MenuItem item) { 
      // TODO Auto-generated method stub 
      return false; 
     } 


     public void onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) { 
      Log.i("xxx", "pos: "+position+", checked: "+checked); 
      mode.setTitle(getListView().getCheckedItemCount()+" checked"); 

     } 
    }); 
    } 

} 

這裏我可以看到越來越檢查的項目,但檢查的項目的背景沒有改變。我知道如何做到這一點,讓你的CustomAdaptergetView()設置被檢查的視圖的背景。但我相信有更簡單的方法來處理它。你能告訴我是否有任何實現嗎?

附加的截圖

+0

請將@Overrides註釋放在需要的地方。它有助於可讀性 – njzk2

+0

http://whathaveyoutried.com? – njzk2

+0

使用選擇器xml ..'state_checked =「true」' – Ronnie

回答

12

好吧,我通過其他應用程序的源代碼,這是否會得到答案。設置一個狀態列表作爲列表項目的背景。在選擇器state_activated = true中給出背景可繪製。

+0

我一直在尋找這個答案整天。謝謝! – Egis

相關問題