An Index Side Bar With Wave Effect
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 | ||
| 9 年前 |
以下内容由 AI 翻译,如有问题请 点此提交 issue 反馈
波浪侧边栏
您可以在应用程序的联系人页面中使用WaveSideBar。
参考:AlexLiuSheng/AnimSideBar。
屏幕截图

将WaveSideBar引入项目
通过gradle:
dependencies {
compile 'com.gjiazhe:wavesidebar:1.3'
}
在布局文件中使用WaveSideBar
<com.gjiazhe.wavesidebar.WaveSideBar
android:id="@+id/side_bar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingRight="8dp"
app:sidebar_position="right"
app:sidebar_max_offset="80dp"
app:sidebar_lazy_respond="false"
app:sidebar_text_color="#8D6E63"
app:sidebar_text_size="14sp"
app:sidebar_text_alignment="center"/>
属性说明
| 属性名 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| sidebar_text_color | 颜色 | Color.GRAY | 侧边栏文字的颜色。 |
| sidebar_text_size | 尺寸 | 14sp | 侧边栏文字的大小。 |
| sidebar_max_offset | 尺寸 | 80dp | 选中项的最大偏移量。 |
| sidebar_position | 枚举 {right, left} | right | 设置在视图的左边或右边。 |
| sidebar_text_align | 枚举 {center, left, right} | center | 文字对齐方式(居中、左对齐、右对齐)。 |
| sidebar_lazy_respond | 布尔值 | false | 如果__true__,监听器直到手指__抬起__时才触发。如果__false__,在手指__按下__、__移动__和__抬起__时都会触发。 |
这些属性可以在布局文件中设置,也可以在Java代码中设置:
WaveSideBar sideBar = (WaveSideBar) findViewById(R.id.side_bar);
sideBar.setTextColor(Color.BLACK);
sideBar.setMaxOffset(100);
sideBar.setPosition(WaveSideBar.POSITION_LEFT);
sideBar.setTextAlign(WaveSideBar.TEXT_ALIGN_CENTER);
sideBar.setLazyRespond(true);
设置监听器以观察WaveSideBar
WaveSideBar sideBar = (WaveSideBar) findViewById(R.id.side_bar);
sideBar.setOnSelectIndexItemListener(new WaveSideBar.OnSelectIndexItemListener() {
@Override
public void onSelectIndexItem(String index) {
Log.d("WaveSideBar", index);
// 在这里执行相应操作 ...
}
});
自定义索引
使用setIndexItems来定制索引。
sideBar.setIndexItems("あ", "か", "さ", "た", "な", "は", "ま", "や", "ら", "わ");


左手模式?
使用setPosition方法更改侧边栏的位置。
sideBar.setPosition(WaveSideBar.POSITION_LEFT);

懒惰响应
使用setLazyRespond设定侧边栏是否应懒惰地响应触摸事件。
sideBar.setLazyRespond(true);
