Android开源控件:字符索引栏EZ-CharIndexBar

前言

EZ-CharIndexBar是一个Android上的“字符索引栏”,效果类似WeChat通讯录右侧的索引栏样式。效果如下:

《Android开源控件:字符索引栏EZ-CharIndexBar》 demo.gif

Gradle 依赖

在app的build.gradle 下添加如下依赖即可:

dependencies {
    compile 'cn.shorr:ez-charindexbar:0.1.2'
}

使用

在布局xml文件中添加

<cn.shorr.charindexbar.CharIndexBar
        android:id="@+id/char_index_bar"
        android:layout_width="25dp"
        android:layout_height="match_parent"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="20dp"
        app:barBackground="#3f000000"
        app:barChars="☆ABCDEFGHIJKLMNOPQRSTUVWXYZ#"
        app:barTextColor="@android:color/black"
        app:barTextSize="14sp" />
  • barBackground:索引栏背景色
  • barChars:索引栏显示字符
  • barTextColor:索引栏字体颜色
  • barTextSize:索引栏字体大小

在Activity中如下操作

//1.创建字符指示视图
//使用默认参数字符指示视图
charIndicateView = new CharIndicateView(this);
/*使用自定义参数字符指示视图
CharIndicateConfig config = CharIndicateConfig
                .create()
                .setViewSize(100) //视图大小(dp)
                .setTextSize(50) //字体大小(sp)
                .setTextBold(false) //字体是否加粗
                .setTextColor(Color.WHITE) //字体加粗
                .setBackgroundColor(Color.parseColor("#5f000000")) //视图背景色
                .setBackgroundRadius(8); //视图背景圆角半径(dp)
charIndicateView = new CharIndicateView(this, config);
*/
//动态设置索引栏字符
//charIndexBar.setChars("0123456789ABCDEFGHIJKLMNO");

//2.索引栏和指示视图建立联系
charIndexBar.setupWithIndicateView(charIndicateView);
//3.设置选中监听事件
charIndexBar.setOnSelectedListener(new CharIndexBar.OnSelectedListener() {
  @Override
  public void onSelected(int position, String selectedChar) {
    Log.e(TAG, "选中--" + selectedChar);
    //根据选中的字符来定位列表的位置
   ... 
  }
});

Github

https://github.com/shorr/ez-charindexbar

    原文作者:Shorr_肖尔
    原文地址: https://www.jianshu.com/p/6883b5b8999a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞