2011-11-26 14 views
0

有誰知道如何達到以下要求?Android - 如何使用一個記錄(遊標)來填充ListView中多個列表項的數據?

查詢數據庫時,只返回一條記錄。 此記錄將用於填充ListView中的少數列表項(例如5個條目)。

由於它只有一條記錄,所以我很難填寫第二到第五條目的條目。

public class TestCursorAdapter extends CursorAdapter { 
    List list = new ArrayList(); 

    public TestCursorAdapter (Context context, Cursor c, boolean autoRequery) { 
     super(context, c, autoRequery); 
      list.add("Test 1"); 
      list.add("Test 2"); 
      list.add("Test 3"); 
      list.add("Test 4"); 
      list.add("Test 5"); 
    } 

    public View newView(Context context, Cursor cursor, ViewGroup parent) { 
      // cursor will only return one record, but it needs to populate five records (list size is 5) 
    }   

    public void bindView(View view, Context context, Cursor cursor) { 
      // cursor will only return one record, but it needs to populate five records (list size is 5) 
    } 

    public int getCount() { 
     return list.size(); 
    } 

    public int getViewTypeCount() { 
      return 5; 
    } 
} 

我使用CursorLoader來查詢數據庫中的數據。

由於

+0

你能更具體嗎?如果只返回一條記錄,必須使用哪些數據「填充第二到第五條目的條目」?需要「模擬」數據,或者用來填充你的listview記錄2-5的東西? – Rainbowbreeze

回答

0

CursorAdapter僅適合於特定格式的Cursors,隨着ListView每行一個行。你最好寫自己的自定義擴展名BaseAdapter,其後盾數據是你的唯一Cursor。然後您可以指定如何獲取getView()中每個位置的數據。

相關問題