jt1*_*123 1 android android-arrayadapter android-listview
我有一个普通的ListView:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:dividerHeight="10dp" />
Run Code Online (Sandbox Code Playgroud)
然后用Alert对象的ArrayList填充该listview:
// Get ListView object from XML
listView = (ListView) findViewById(android.R.id.list);
// Create a new Adapter
ArrayAdapter<Alert> adapter = new ArrayAdapter<Alert>(this, android.R.layout.activity_list_item, android.R.id.text1, DataSourceHandler.getAlertsList());
// Assign adapter to ListView
listView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)
DataSourceHandler.getAlertsList()向我返回对象的ArrayList,在我的ListView中,我现在看到类似以下两项:
这两个Alert对象具有一个名为getName()的方法,该方法返回一个String,我希望将其用作列表中该项目的显示名称,而不是上面的内容。
我怎样才能做到这一点?
正如评论中已经提到的那样,标准ArrayAdapter实现调用toString()列表中的每个对象,并使用结果填充视图String。最简单的解决方案是toString()通过在其中调用您的getName()方法进行覆盖。如果它不适合您的需求,则应创建一个自定义适配器。
| 归档时间: |
|
| 查看次数: |
2877 次 |
| 最近记录: |