在android的开发中,经常会遇到需要主动去设定某条ListItem的位置的需求。设置位置的函数有

        
  1. ListView.setSelection(intposition)
  2. ListView.setSelectionFromTop(intposition,inty);

其中position指的是指定的item的在ListView中的索引,注意如果有Header存在的情况下,索引是从Header就开始算的。y指的是到ListView可见范围内最上边边缘的距离。

那么取得position的函数是

        
  1. ListView.getFirstVisiblePosition()

但是这里还只能取到position的值,还差一个y的值。

这里就需要获得ListView的第一个元素对象,然后获得该试图对象可见范围内最上边边缘的距离,代码如下:

        
  1. Viewv=mList.getChildAt(0); //假设你的代码中ListView对象的变量名是mList
  2. inttop=(v==null)?0:v.getTop();
  3. int position = ListView.getFirstVisiblePosition()
  4. mList.setSelectionFromTop(position,top);

本文出自 “D调的鲨鱼” 博客,转载请与作者联系!

更多相关文章

  1. 箭头函数的基础使用
  2. 类和 Json对象
  3. Python技巧匿名函数、回调函数和高阶函数
  4. 浅析android通过jni控制service服务程序的简易流程
  5. Android(安卓)bluetooth介绍(四): a2dp connect流程分析
  6. Android中文API(144) —— JsonWriter
  7. Android之Handler用法总结
  8. Android架构分析之使用自定义硬件抽象层(HAL)模块
  9. android通过ksoap2对webservice的解析

随机推荐

  1. 通过 Web 控制蓝牙设备:WebBluetooth入门
  2. 7个 Javascript 面试题及回答策略 [每日
  3. JavaScript 高阶函数快速入门 [每日前端
  4. 分享十张表的数据!大家一起玩!
  5. 2019年 Vue.js 报告中的亮点 [每日前端夜
  6. 用python重新定义【2019十大网络流行语】
  7. 用 Node.js 写一个多人游戏服务器引擎 [
  8. 三十天写三十个网站后,我学到的东西[每日
  9. 14个最好的 JavaScript 数据可视化库[每
  10. deno如何偿还Node.js的十大技术债 [每日