在之前拟定的业务需求中,涉及到获取调用listview中点击项数据的问题。先前的解决方法为:从头开始遍历获取,如果存在很多数据,会将每一条都处理一遍。
while(!cursor.isAfterLast()){
Cursor cursor = select();
cursor.moveToFirst();
/*
* 业务代码在这里
*/
cursor.moveToNext();
}
思考了一下,setOnItemClickListener方法各个参数的含义:
AdapterView<?> parent, View view, int position, long id
listView中的每一项都可以通过position及id定位,想到了应该得到修改的地方,
cursor.moveToFirst(); 应该改为 cursor.moveToPosition(position);
根据position获取当前点击项,而不是从第一条数据开始遍历,相应的,cursor.moveToNext也需要移除。
问题解决,总结一下:花费了许多时间在无用的地方,专注一下,断一次点,查一下问题,稍稍思考一下,自己存在的问题还是太多了,不怪总有人说自己不成熟,确实如此。谨此,铭记。