1介面卡實現sectionindexer介面
@override
public object getsections()
//此方法是通過字母的ascii碼,與集合裡的元素拼音的首字母的ascii碼做比較,返回第乙個相同的索引位置(即分組位置)
@override
public int getpositionforsection(int sectionindex)
}return 0;
}//此方法是通過索引位置,獲取到此索引所屬的分組字母
@override
public int getsectionforposition(int position)
2在xml檔案裡放置乙個偽item,遮擋住listview的第乙個item,它用來做碰撞位移
3在**裡設定listview的滾動監聽,通過firstvisibleitem去判斷所屬分類,當(firstvisibleitem + 1 == nextsectionposition)第乙個可見條目的下乙個item與判斷出來的下乙個分類的位置相同的時候,就要開始進行碰撞效果實現<?xml version="1.0" encoding="utf-8"?>
//設定滾動監聽,去實現擠壓效果
mlv_main.setonscrolllistener(new abslistview.onscrolllistener()
@override
public void onscroll(abslistview view, int firstvisibleitem, int visibleitemcount,
int totalitemcount)
//如果當前可見條目的下乙個條目就是下乙個分組字母的位置
if (firstvisibleitem + 1 == nextsectionposition)
}//未滿足上面的條件,就將偽容器的y座標設定的和listview一樣,滿足了就設定計算的值
titlelayout.sety(titley);
lastvisibleindex = firstvisibleitem;
}});
ListView阻尼效果
效果圖省略。activity main.xml 僅僅有乙個自己定義listview mainactivity arraylistadapter 為了簡化 package com.example.dampingdemo import android.os.bundle import android.w...
ListView 分組完美實現
專案中需要用到分組列表,資料為動態,apidemo中的例子不能滿足要求。而expandlistview存在收起時才能重新整理的問題 專案要求不能收起 雖然實現了,但是很不爽。最後自己實現了乙個。section 組頭 row 組所屬行 public abstract class groupbasead...
ListView的item動畫效果
created by llb on 2016 1 26.public abstract class listadapter extends baseadapter 設定動畫 public void setanimation animationset set private abslistview.o...