拓冰建站拓冰建站
首页 / 资讯中心 / 正文

RoundedLetterView快速上手清单:XML声明式配置vs代码动态设置,5个API一次讲透

RoundedLetterView快速上手清单XML声明式配置vs代码动态设置5个API一次讲透【免费下载链接】RoundedLetterViewRoundedLetterView like the one in Android 5.0 Contacts app项目地址: https://gitcode.com/gh_mirrors/ro/RoundedLetterViewRoundedLetterView 是一个 Android 自定义圆形字母头像组件还原了 Android 5.0 通讯录 App 中经典的圆底字母头像效果。本文提供一份快速上手清单XML 声明式配置与代码动态设置两种方式对比5 个核心 API 一次讲透新手照着做即可完成集成与定制。效果一览圆形字母头像长什么样 下图是示例应用的实际运行效果列表左侧是一排圆形字母头像A、B、C、D、E、F…每个圆形背景色不同、字母居中显示正是 RoundedLetterView 组件的典型用法。一键集成步骤在build.gradle中添加依赖即可使用compile com.github.pavlospt:roundedletterview:1.3组件源码位于roundedletterview模块核心绘制逻辑在 RoundedLetterView.java 中绘制流程非常简洁onMeasure中取宽高较小值作为圆形直径默认 96dponDraw中先绘制居中的填充椭圆drawOval作为背景再用TextPaint在圆心位置绘制字母自动做垂直居中计算XML 声明式配置4 个自定义属性自定义属性声明在roundedletterview/src/main/res/values/attrs_rounded_letter_view.xml中共 4 个属性全部带rlv_前缀属性作用默认值rlv_titleText圆内显示的字母/文本Arlv_titleSize字母字号dimension25dprlv_titleColor字母颜色白色rlv_backgroundColorValue圆形背景颜色青色CyanXML 声明式配置示例com.github.pavlospt.roundedletterview.RoundedLetterView xmlns:apphttp://schemas.android.com/apk/res-auto android:idid/rlv_name_view android:layout_width56dp android:layout_height56dp app:rlv_titleTextA app:rlv_titleSize35dp app:rlv_titleColorandroid:color/white app:rlv_backgroundColorValuecolor/green /⚠️ 避坑提醒1.0 版本中属性不带rlv_前缀如titleText从 1.1 版本起必须改为rlv_前缀升级时别忘记同步修改 XML。代码动态设置5 个核心 API 一次讲透 当头像内容来自服务器数据如联系人姓名首字母时需要在 Java 代码中动态设置。RoundedLetterView 对外暴露的 5 个核心方法如下API参数类型作用setTitleText(String)String设置圆内字母如姓名首字母setBackgroundColor(int)int颜色值设置圆形背景色setTitleSize(float)float字号设置字母字号setTitleColor(int)int颜色值设置字母颜色setTextTypeface(Typeface)Typeface设置自定义字体1.1 版新增另外还有 3 个对应的 gettergetTitleText()、getBackgroundColor()、getTitleSize()可用于读取当前配置。动态设置示例如根据姓名首字母渲染头像RoundedLetterView avatar findViewById(R.id.rlv_name_view); avatar.setTitleText(name.substring(0, 1).toUpperCase()); avatar.setBackgroundColor(Color.parseColor(#FF5252)); avatar.setTitleColor(Color.WHITE); avatar.setTitleSize(35f); avatar.setTextTypeface(Typeface.create(sans-serif, Typeface.NORMAL));每个 setter 内部都会自动调用invalidate()触发重绘无需手动刷新。XML vs 代码什么时候用哪种场景推荐方式理由固定展示如关于页图标XML 声明式声明直观随布局文件一目了然列表/动态数据如联系人列表代码动态设置Adapter 中根据数据逐项设置灵活高效需要自定义字体代码动态设置Typeface对象无法在 XML 中直接传入简单原则静态写 XML动态用代码两者可以混用——XML 给默认值代码覆盖特定值。新手避坑清单 ✅尺寸建议宽高写成一样的固定值如 56dp × 56dp组件会以较小边为直径绘制圆形并自动居中属性前缀1.1 及以上版本必须用rlv_前缀否则属性不生效且无报错默认值未配置时默认显示白色字母 A、青色背景、字号 25dp防锯齿绘制已默认开启ANTI_ALIAS_FLAG小尺寸下边缘依然平滑核心文件速查文件说明roundedletterview/src/main/java/com/github/pavlospt/roundedletterview/RoundedLetterView.java组件核心实现测量 绘制 5 个 APIroundedletterview/src/main/res/values/attrs_rounded_letter_view.xml4 个自定义属性声明README.md官方使用说明与版本迁移指南LICENSEApache License 2.0按照这份清单操作从添加依赖到完成圆形字母头像的 XML 配置或代码动态设置全程不超过 5 分钟即可在应用中复刻 Android 5.0 通讯录的经典头像效果。【免费下载链接】RoundedLetterViewRoundedLetterView like the one in Android 5.0 Contacts app项目地址: https://gitcode.com/gh_mirrors/ro/RoundedLetterView创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门