簡體   English   中英

Android - ListView適配器,包含兩個視圖的項目

[英]Android - ListView Adapter with items of two views

我是Android編程新手,我陷入困境兩天,似乎無法解決。
我有一個ListActivity,應該填充兩個幾乎沒有模擬性的不同視圖。 直到現在我已經使用了MergeAdapter並且它工作正常但我的結果是這樣的:Adapter1,Adapter2。 而我無法更改列表中項目的順序。 我的問題是:是否可以創建一個包含兩個視圖的項目的適配器而不是兩個視圖的適配器,所以我將按照輸入的方式對我的項目進行排序? 為簡單起見,我得到了這兩個項目的ArrayList,每個都有“int position”,所以我可以將它們插入到按位置排序的列表中。
編輯:我已經嘗試擴展BaseAdapter,但我再次需要兩個適配器,因為我在線閱讀但如果我這樣做,我將無法控制列表中項目的位置。 我希望這次我更清楚。 歡迎任何回應。
謝謝。

您可以子類化BaseAdapter並使用以下方法:

getItemViewType(int position)

getViewTypeCount()

getViewTypeCount()應返回適配器支持的不同行類型的數量。 getItemViewType()用於實現特定行應具有的視圖類型的“決策”。 例如,如果getViewTypeCount()返回3,則getItemViewType()方法應返回0,1或2。

您可以在getView中使用此內容為不同的行類型擴展/創建不同的布局。

編輯:

由於它是自定義適配器,因此您可以以對數據有意義的任何方式實現它。 如果您可以創建適合您想要的數據結構,那么只需使適配器能夠使用它。 在最壞的情況下,您可能只有一個對象的數組(或列表),並且必須使用instanceof來執行決策工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM