listview怎么避免重复添加数据
展开全部
Android ListView最佳处理方式,ListView拖动防重复数据显示,单击响应子控件。
1、为了防止拖动ListView时,在列表末尾重复数据显示。需要加入 HashMap<Integer,View> lmap = new HashMap<Integer,View>();其中Integer为列表位置,View为子项视图,加入数据前首先if (lmap.get(position)==null)
,满足条件时,加入lmap.put(position, convertView);如果条件不满足,convertView = lmap.get(position);
2、监听每个子控件时,一定要加入final int currentPosition=position;这样可以牢牢抓住每次点击的响应位置;最好把控件集成到类中。
1、为了防止拖动ListView时,在列表末尾重复数据显示。需要加入 HashMap<Integer,View> lmap = new HashMap<Integer,View>();其中Integer为列表位置,View为子项视图,加入数据前首先if (lmap.get(position)==null)
,满足条件时,加入lmap.put(position, convertView);如果条件不满足,convertView = lmap.get(position);
2、监听每个子控件时,一定要加入final int currentPosition=position;这样可以牢牢抓住每次点击的响应位置;最好把控件集成到类中。
展开全部
1、为了防止拖动ListView时,在列表末尾重复数据显示。需要加入 HashMap<Integer,View> lmap = new HashMap<Integer,View>();其中Integer为列表位置,View为子项视图,加入数据前首先if (lmap.get(position)==null)
,满足条件时,加入lmap.put(position, convertView);如果条件不满足,convertView = lmap.get(position);
2、监听每个子控件时,一定要加入final int currentPosition=position;这样可以牢牢抓住每次点击的响应位置;最好把控件集成到类中。
,满足条件时,加入lmap.put(position, convertView);如果条件不满足,convertView = lmap.get(position);
2、监听每个子控件时,一定要加入final int currentPosition=position;这样可以牢牢抓住每次点击的响应位置;最好把控件集成到类中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、你ListView的数据源是ArrayList吗如果是的话,你增加数据时可以用list.contains(object)方法判断,该数据是否存在,存在即修改数量,不存在就增加条目!
2、你ListView的数据源是ArrayList吗如果是的话,你增加数据时可以用list.contains(object)方法判断,该数据是否存在,存在即修改数量,不存在就增加条目!
2、你ListView的数据源是ArrayList吗如果是的话,你增加数据时可以用list.contains(object)方法判断,该数据是否存在,存在即修改数量,不存在就增加条目!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是向ListView1添加数据后显示数据:
数据库有两列 一列是自增主键id,另一列是具体数据。存储过程也是insert into history (数据) values(@数据)
这个是显示方法:
DataSet1.historyDataTable dt = new DataSet1.historyDataTable();
DataSet1TableAdapters.historyTableAdapter ta =
new DataSet1TableAdapters.historyTableAdapter();
int refreshtime = ta.Fill(dt);
for (int i = 0; i < dt.Rows.Count; i++)
{
if (i == refreshtime - 1)
{
listView1.Items.Add(new ListViewItem(new string[] { dt.Rows[i][1].ToString() }));
}
}
数据库有两列 一列是自增主键id,另一列是具体数据。存储过程也是insert into history (数据) values(@数据)
这个是显示方法:
DataSet1.historyDataTable dt = new DataSet1.historyDataTable();
DataSet1TableAdapters.historyTableAdapter ta =
new DataSet1TableAdapters.historyTableAdapter();
int refreshtime = ta.Fill(dt);
for (int i = 0; i < dt.Rows.Count; i++)
{
if (i == refreshtime - 1)
{
listView1.Items.Add(new ListViewItem(new string[] { dt.Rows[i][1].ToString() }));
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个和listview没什么关系吧,只要确保查询的数据是不重复的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询