2012-10-19 71 views
0

我不知道我現在的方法是否正確......我有兩個類擴展了Activity,另一個擴展了ListActivity。現在,當我按下Activity類佈局中的一個按鈕時,我想在ListActivity中對列表進行排序。什麼是可能的方法..目前我正在嘗試從Activity類發送適配器到ListActivity,但它使我失敗。所以還有其他的想法。很快就會有答案...提前感謝。從活動發送適配器到ListActivity

+1

把作爲額外的,像@Ralgha說,很可能是最好的辦法......但你也可以設置一個靜態列表項目並對它們進行排序,然後您可以調用notifyDataSetChanged。兩者都將完成這項工作。 – yahya

回答

1

兩個選項,我看到offhand。

1)將排序按鈕放在ListActivity的佈局中,這樣它們都在同一個Activity中。

2)當他們在活動1中推送排序按鈕時,將排序方法放入您啓動ListActivity的Intent中作爲額外。在ListActivity中讀取額外的內容並進行相應的排序。

+0

但我不希望ListActivity顯示...當你說我發送適配器作爲額外的意圖,那麼它也會調用我不想要的ListActivity的onCreate方法。我只是希望它發生在後臺。 – Saurabh

+0

你到底在做什麼? ListActivity的全部重點是向用戶顯示一個列表。 – Ralgha

+0

好吧,讓我給出一個情況......考慮一個播放列表按鈕......點擊Activity類時的播放列表按鈕將通過intent調用ListActivity。好的。現在有這個shuffle按鈕...這將洗牌我的ArrayList,它將再次被饋入一個適配器,這個適配器是我想要發送到ListActivity但我不希望它打開每次我選擇或取消選擇shuffle按鈕。 – Saurabh

0

創建一個按鈕或膨脹的佈局,然後將其添加爲標題,像

Button sort = new Button(this); 
    sort.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      //.... 
     } 
    }); 
    ListView lv; 
    getListView().addHeaderView(sort) 


    setListAdapter(...) 
+0

我沒有得到方法..代碼中究竟發生了什麼?考慮到你已經給按鈕名稱排序,那麼addHeaderView()究竟做了什麼呢? – Saurabh

+0

它將一個標題視圖添加到列表視圖。標題視圖位於任何列表項之前。使用這種方式你不需要從使用ListActivity切換到活動類 – petey

+0

好吧..!我會仔細看看的..:) – Saurabh