1.前言
-
最近在项目迭代时,遇到新的UI需求,如下:
原型.png - 看到之后我分析了一下有那些实现方式:
1.使用第三款库分别实现上下部分的UI功能。
2.让UI做图片,同background+press实现。
3.自定义View实现。
- 第 1 种实现需要额外去寻找对应的UI库或者学习相对应的使用,实现比较耗时而且有时候第三方库不一样完全满足需求,最后还是要去修改源码,所以放弃了这种方式;第 2 种更不用说,实现起来麻烦而且用图片的方式扩展性不好;最后还是选择自定义View的方式同时实现上部分与下部分2种UI的功能,还能在不同的项目进行复用。
-
PermuteView
,实现基于电话按键、数据键盘、圆形步骤等风格的自定义View。 - 文章中实例 linhaojian的Github
2.效果
-
献上一个GIF,展示它能实现什么功能。
permuteview.gif
3.使用
- 使用方式只需要5个步骤。
3.1 在项目根目录的bulid.gradle中添加以下代码:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
3.2 添加dependency:
dependencies {
implementation 'com.github.linhaojian:permute:v1.0'
}
3.3 在需要使用的xml中添加:
<com.lhj.permute.PermuteView
android:id="@+id/p1"
android:layout_width="50dp"
android:layout_height="50dp" />
3.4 初始化 & 根据需求设置参数:
//初始化
p1 = findViewById(R.id.p1);
//设置内容
p1.setContent("1");
//设置内容显示的颜色
p1.setContentColor(Color.parseColor("#4E7EAE"));
//设置背景显示的颜色
p1.setBackGroundColor(Color.parseColor("#ffffff"));
//设置圆角
// p1.setCorner(10);
//设置是否可以点击
p1.setClickEnable(true);
//设置是否显示为圆形
p1.setCircle(true);
4.总结
- 到此,
PermuteView
就介绍完毕。 - 如果喜欢我的分享,可以点击 关注 或者 赞,你们支持是我分享的最大动力 。
- linhaojian的Github
欢迎关注linhaojian_CSDN博客或者linhaojian_简书!
不定期分享关于安卓开发的干货。
写技术文章初心
- 技术知识积累
- 技术知识巩固
- 技术知识分享
- 技术知识交流
网友评论