2013-05-08 47 views
4

我想實現ListView,每個項目都有多個標籤,如StackOverflow列表(一種主 - 細節樣式視圖)。 項目中的每個標記都由tags字符串數組枚舉。可以添加ListView項目而不使用適配器?靜態數組顯示太麻煩

這些標籤在第一次顯示時不需要更改/過濾,所以我認爲它不需要使用適配器(適配器用於數據模型和視圖之間的綁定,對吧?)。此外,我認爲在每個項目中使用適配器可能會導致性能問題,以便處理額外的綁定。

是否有任何解決方法可以在不使用Adapter的情況下添加ListView項目?

僅供參考,在C#中,listView.Items.Add("item1");可以簡單顯示項目。

+0

所以基本上你想在listview中顯示項目而不創建任何適配器,我是對嗎? – hardartcore 2013-05-08 10:15:02

+0

@ Android-Developer //是的。究竟。但需要在每個項目上設置樣式(彩色框),以便使用TextView的array.toString()對我來說不夠好。 – Youngjae 2013-05-08 10:16:44

+1

無法添加/顯示任何項目以列出視圖而不創建任何適配器。 – hardartcore 2013-05-08 10:19:22

回答

3

As @ Android-Developer指出,如果沒有Adapter,就不可能向ListView添加數組。

listViewTopics.setAdapter(new ArrayAdapter<Topic>(CurrentActivity.this, R.layout.item_tag, topics)); 

上述單線代碼是顯示數組項simplist方式(在該例子topics)至ListView

0

試試這個..

在string.xml首先做..

<string-array name="Entries"> 
<item>Item 1</item> 
<item>Item 2</item> 
<item>Item 3</item> 
</string-array> 

然後在XML你的ListView做..

<ListView 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:entries="@array/Entries"></ListView> 
+0

你讓我知道新的知識。謝謝。只能通過代碼來實現嗎?我的問題是關於不是資源固定的,但以編程方式生成。 – Youngjae 2017-03-28 08:13:54

0

沒有選項用適配器創建列表。但是,您可以使用默認數組適配器進行列表視圖。

List<String> values = new ArrayList<>(); 
values.add("Lesson 1."); 
values.add("Lesson 2."); 
values.add("Lesson 3."); 
values.add("Lesson 4."); 

ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String> 
      (this, android.R.layout.simple_list_item_1, values); 

listView.setAdapter(arrayAdapter); 
相關問題