这不起作用我想在第一个SimpleAdapter上附加第二个SimpleAdapter。但是,它被覆盖了,只显示了第二个列表。
我希望在每个对象的单个列表中显示不同的列表格式,如list_item和list_item_new 需要帮助
ListAdapter newAdapter = new SimpleAdapter(
NotificationTask.this, notificationsList,
R.layout.list_item_new, new String[] { TAG_PID,
TAG_NAME, TAG_DESCRIPTION},
new int[] { R.id.pid, R.id.name, R.id.description });
newAdapter = new SimpleAdapter(
NotificationTask.this, oldNotificationsList,
R.layout.list_item, new String[] { TAG_NID,
TAG_NAME, TAG_DESCRIPTION},
new int[] { R.id.pid, R.id.name, R.id.description });
//list.setAdapter(adapter);
setListAdapter(newAdapter);
((BaseAdapter) newAdapter).notifyDataSetChanged();
答案 0 :(得分:0)
这是不可能的,尝试创建一个能够处理方法getView上的两个元素的自定义适配器(如果一种视图与另一种不同)。
适配器是listview及其内容之间的中间人,因此每个listview只能管理一个适配器,这就是它被第二个适配器上的数据覆盖的原因。
答案 1 :(得分:0)
我将MatrixCursor
与SimpleCursorAdapter
结合使用,以组合显示的多个数据源。
您可以覆盖SimpleCursorAdapter.ViewBinder
&#39} setViewValue(View view, Cursor cursor, int columnIndex)
方法并指定逻辑。