1、類通訊錄列表篩選組件(SaluLetterSortLayout)
1.1 XML示例
1.1.1 組件引用
<com.salu.saluandroid.views.salusortview.SaluLetterSortLayout
android:id="@+id/flsl_list"
android:layout_width="30dp"
android:layout_height="match_parent"
android:paddingBottom="5dp"
android:paddingTop="5dp"/>
1.1.2 字符指示器
<TextView
android:id="@+id/TV_contact_short_sort"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_centerInParent="true"
android:layout_gravity="center"
android:gravity="center"
android:textColor="#ffffffff"
android:textSize="30dp"
android:visibility="gone"
/>
1.2 方法
1.2.1 SaluSortBuilder類
該類為排序UI組件的初始化構(gòu)造類宣谈,用于進(jìn)行用戶的自定義瓮钥,需要將其作為參數(shù)傳遞到該UI組件中探遵。
方法如下:
1番挺、public SaluSortBuilder orientation(int orientation)
設(shè)置字符排序方向姆坚,參數(shù)為int 囱晴,SaluFirstLetterSortLayout.HORIZONTAL_RANGE SaluFirstLetterSortLayout.VERTICAL_RANGE膏蚓。
2、 public SaluSortBuilder displayMode(SaluFirstLetterSortLayout.DisplayMode displayMode)
設(shè)置字符列表顯示模式速缆,DisplayMode{NUMBER, ALPHA_DOWN,ALPHA_UPPER},支持0-9的數(shù)字恩闻,大小寫(xiě)字母艺糜。
3、public SaluSortBuilder characterColor(int characterColor)
設(shè)置字符顏色
4幢尚、public SaluSortBuilder firstAlpha(String firstAlpha)
設(shè)置自定義首個(gè)字符
5破停、SaluSortBuilder build()//最后調(diào)用,構(gòu)造SaluSortBuilder對(duì)象尉剩。
1.2.2 SaluFirstLetterSortLayout類
該類為首字母豎排篩選view組件真慢。
方法如下:
public void showLayout(SaluSortBuilder builder);
初始化方法理茎,傳入排序UI組件的初始化構(gòu)造類SaluSortBuilder完成組件設(shè)置
public void setOnTouchAlphaChangedListener(OnTouchingAlphaChangedListener onTouchAlphaChangedListener)
當(dāng)用戶在SaluFirstLetterSortLayout上觸摸或手指移動(dòng)時(shí)觸發(fā)該監(jiān)聽(tīng)器黑界。
1.3 示例
private WeakReference<MainActivity> mReference;
SaluLetterSortLayout saluFirstLetterSortLayout;//通過(guò)findViewById
onCreate(){
mReference = new WeakReference<>(this);
SaluSortBuilder builder=new SaluSortBuilder();
builder.displayMode(SaluFirstLetterSortLayout.DisplayMode.ALPHA_UPPER)
.firstAlpha("#")
.orientation(SaluFirstLetterSortLayout.VERTICAL_RANGE)
.build();
saluFirstLetterSortLayout.showLayout(builder);
}