listview.setselection(position)不起作用
2016-06-22 11:14
337 查看
listview.setselection(position)不起作用的原因网上也有解释,大多数 就是你的Adapter还没有加载完,你就去setselection()这个一定是没有效果的。那么大多数的解决办法就是用handler 做一个延时操作。 private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 1001:
mListView1.setSelection(2);
// listAdapter.setIsSelected(2);
Log.d("log", "handleMessage: 执行了吗?");//运行试试ok稍等 有点慢 我在试试
break;
}
}
};
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
initlisteone();
handler.sendEmptyMessageDelayed(1001, 8000);//这里的时间你可以按照自己的项目 进行调整
listAdapter.setIsSelected(2);
}
这个办法会帮助大多数人解决这个 mListView1.setSelection(2); 没有效果的问题,但是 我就偏偏遇到另一个坑,项目当中 的list item数量 正好屏幕能装满 listview没有滑动效果 ,这样的话 即使你成功的 设置那那个方法 但是你也不会看到效果 哈哈 这里标记一下吧 好坑
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 1001:
mListView1.setSelection(2);
// listAdapter.setIsSelected(2);
Log.d("log", "handleMessage: 执行了吗?");//运行试试ok稍等 有点慢 我在试试
break;
}
}
};
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
initlisteone();
handler.sendEmptyMessageDelayed(1001, 8000);//这里的时间你可以按照自己的项目 进行调整
listAdapter.setIsSelected(2);
}
这个办法会帮助大多数人解决这个 mListView1.setSelection(2); 没有效果的问题,但是 我就偏偏遇到另一个坑,项目当中 的list item数量 正好屏幕能装满 listview没有滑动效果 ,这样的话 即使你成功的 设置那那个方法 但是你也不会看到效果 哈哈 这里标记一下吧 好坑
相关文章推荐
- 使用GSON库转换Java对象为JSON对象的进阶实例详解
- 获取当前url地址和目录不包含访问的文件名
- think in java笔记:this关键字
- BASISI系统中如何配置web service
- JavaScript Promise
- 上帝造题的七分钟 [Tyvj 1716]
- 毕向东Java视频学习笔记【day08-继承】
- dlib landmark+人面识别
- trace enabled
- C++泛型和算法
- subversion的三种外挂系统
- 12c CDB和PDB启动和关闭操作
- Android 上下滚动条、轮训滚动、广告条
- Python爬虫实战 抓取淘宝照片
- win7+cuda7.5+caffe
- jmeter BeanShell实例-----两个变量之间的断言对比
- asp.net mvc自定义JsonResult类来防止MaxJsonLength超过限制
- Hibernate HQL详解
- 一个简单的PHP文件上传示例程序
- 数字之和(C++)