最近我遇到了一种方法来反转listview中的数据:
getItem(getCount() - getPosition() - 1)
参考:Display new items at the top of a ListView
这个公式实际上如何运作?
例如,我有一组包含以下内容的数据:
a,b,c,d,e有位置 分别为1,2,3,4,5。
因此,getCount()= 5,
使用上面的公式,位置是:
getCount() - getPosition() - 1
a = 5 - 1 -1 = 3
b = 5 - 2 - 1 = 2
c = 5 - 3 - 1 = 1
d = 5- 4 - 1 = 0
e = 5 - 5 - 1 = -1
根据这些计算,listview中的数据如何获得相反的顺序?
使用该方法后我在listiview中得到的结果是:
e,d,c,b,a。
谢谢。
答案 0 :(得分:2)
a = 5 - 0 -1 = 4
b = 5 - 1 - 1 = 3
c = 5 - 2 - 1 = 2
d = 5- 3 - 1 = 1
e = 5 - 4 - 1 = 0
项目的位置从0开始,而不是1.从0开始,它将显示e,d,c,b,a。这就是公式的运作方式。