在Activity中添加ListView内容

时间:2017-02-26 19:18:12

标签: android listview android-arrayadapter

我有一个带有ListView的activity_main布局 我需要在MainActivity中填充我的ListView。

MainActivity不会扩展ListActivity,因为我不仅在布局中使用ListView,而且使用其他元素。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_top_level);
    ListView listView = (ListView) findViewById(R.id.mylist);
}

Item.items返回一个我需要添加到ListView的数组 我怎么能这样做?

我知道我必须使用ArrayAdapter。但我无法做到这一点 它适用于我,但我不明白使用android.R.layout.simple_list_item_1

ArrayAdapter<Item> itemsAdapter = 
    new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, Item.items);
listView.setAdapter(itemsAdapter);

1 个答案:

答案 0 :(得分:0)

关于您的问题,您有两种选择。

1)非常简单,每行toString() ItemArrayAdapter<Item> adapter = new ArrayAdapter<Item>( MainActivity.this, // Context android.R.layout.simple_list_item_1, // An XML file for your items Item.items // The Item[] array ); listView.setAdapter(adapter); 个对象。

ListActivity

2)定义own adapter class with your own XML

如果您知道如何使用setContentView(),那么您仍然可以显示其他元素。

Read the documentation

  

如果您愿意,可以通过在onCreate()中使用ListView设置自己的视图布局来自定义屏幕布局。为此,您自己的视图必须包含标识为"@android:id/list"

selenium-webdriver对象