Views

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ù)字,大小寫字母。
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)聽器。

1.3 示例

 private WeakReference<MainActivity> mReference;
SaluLetterSortLayout saluFirstLetterSortLayout;//通過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);
}

1.4 效果

運(yùn)行效果
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,533評(píng)論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,637評(píng)論 18 399
  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個(gè)線程,因...
    小菜c閱讀 7,311評(píng)論 0 17
  • (一) 蒼茫天地渾然一體,通紅透徹,遠(yuǎn)處卻像有熊熊大火在竭力燃燒著,照亮了整個(gè)神農(nóng)。這等異象卻絲毫沒有影響在忙碌修...
    望及閱讀 1,980評(píng)論 18 45
  • 草語:帶著綿久的柔情,我深深依偎著你 石頭語:堅(jiān)定不疑,我愿一生庇護(hù)你 而你不愿做草,只好委屈我綠草成蔭 保你一年...
    隼夢(mèng)閱讀 383評(píng)論 0 0

友情鏈接更多精彩內(nèi)容