android – 将隐藏的值分配给listview项

前端之家收集整理的这篇文章主要介绍了android – 将隐藏的值分配给listview项前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个扩展ListView的活动.我将列表中的查询结果填充到sqlite数据库.列表元素由start_time,end_time,client_name和status组成.这些是我需要为每个列表项显示的信息的4位.

我的问题是:我可以为此ListView项目分配隐藏的元素吗?

例如,我想存储ListView项目的数据库行的_id字段,这样当我点击它时,我可以根据该数据库行的数据启动一个新的活动.

编辑

我使用的代码从我的光标填充我的列表:

String[] columns = new String[] {VisitsAdapter.KEY_CLIENT_FULL_NAME,VisitsAdapter.KEY_STATUS,VisitsAdapter.KEY_CLIENT_START_TIME,VisitsAdapter.KEY_CLIENT_END_TIME};

// the XML defined views which the data will be bound to
int[] to = new int[] { R.id.name_entry,R.id.number_entry,R.id.start_time_display,R.id.end_time_display  };

SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(HomeScreen.this,R.layout.list_element,cur,columns,to);

其中R.layout.list_item是我的列表项的XML.我来自PHP / HTML背景,所以我通常在这里做一个隐藏的字段来保存我的_id值,一旦列表项被点击,我可以访问.我可以在Android中做类似的事情吗?我可以在我的xml布局中放置一个隐藏的_id字段吗?

解决方法

你应该尝试从Web开发框架中松开一点点.没有必要将这样的东西存储在您的视图中的隐藏字段中.这将混合您的数据与您的用户界面,并创建了很多混乱和不必要的视图对象.

如果您使用sqlite数据库存储您的值,则应使用CursorAdapter来管理列表项. CursorAdapter存储从数据库获得的结果,并管理数据如何显示用户.如果您在ListView注册了一个onItemClickListener,监听器将收到该适配器以及在适配器中点击单元格的数据项的位置.现在可以使用getItem检索指向用于创建listitem的数据库结果的光标.现在,您可以从数据库结果中获取未向用户显示的id或所有其他值,并将其附加到启动下一个活动的意图.

猜你在找的Android相关文章