码迷,mamicode.com
首页 > 其他好文 > 详细

为什么ListView的setSelection无效了-转

时间:2015-08-12 06:40:59      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:

原因一:界面初始化完成之后listview失去了焦点。

原因二:因为listview的item高度不一致,或者添加了headerview,在setadapter之后调用setSelection无法准确定位。

万能解决方法:

 

[java] view plaincopy
 
  1. final ListView listView = new ListView(getActivity());  
  2. listView.post(new Runnable() {  
  3.     @Override  
  4.     public void run() {  
  5.         listView.requestFocusFromTouch();//获取焦点  
  6.          listView.setSelection(listView.getHeaderViewsCount()+10);  
  7.     }  
  8. });  

如果还不行,没关系

 

 

 

 

[java] view plaincopy
 
  1. final ListView listView = new ListView(getActivity());  
  2. listView.postDelayed(new Runnable() {  
  3.     @Override  
  4.     public void run() {  
  5.         listView.requestFocusFromTouch();  
  6.         listView.setSelection(listView.getHeaderViewsCount()+10);  
  7.     }  
  8. },500);  

为什么ListView的setSelection无效了-转

标签:

原文地址:http://www.cnblogs.com/bqtt/p/4722886.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!