温馨提示:本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦!
Avatar 组件是一个用于展示用户头像的基础 UI 组件,支持图片、文字和图标三种显示模式,并提供了丰富的自定义选项。本教程将详细介绍 Avatar 组件的设计思路和实现方法。
// 头像形状类型
enum AvatarShape {
CIRCLE = 'circle', // 圆形头像
SQUARE = 'square' // 方形头像
}
形状类型提供了两种选择:
CIRCLE
:圆形头像,适用于大多数场景SQUARE
:方形头像,适合特定的设计风格// 头像大小类型
enum AvatarSize {
MINI = 'mini', // 24px
SMALL = 'small', // 32px
MEDIUM = 'medium', // 40px
LARGE = 'large' // 48px
}
预设了四种标准尺寸:
MINI
:迷你尺寸,适用于密集列表SMALL
:小型尺寸,适用于常规列表MEDIUM
:中等尺寸,默认尺寸LARGE
:大型尺寸,适用于详情展示interface AvatarProps {
src?: string | Resource, // 图片路径
text?: string, // 文本内容
icon?: string | Resource, // 图标资源
shape?: AvatarShape, // 头像形状
size?: AvatarSize | number, // 头像大小
randomBgColor?: boolean, // 是否启用随机背景色
bgColor?: ResourceColor, // 自定义背景色
onError?: () => void // 加载失败回调
}
属性说明:
src
:用于设置头像图片的资源路径text
:用于设置文字头像的显示文本icon
:用于设置图标头像的资源shape
:设置头像的形状,默认为圆形size
:设置头像的大小,支持预设值和自定义数值randomBgColor
:是否启用随机背景色bgColor
:自定义背景色,优先级高于随机背景色onError
:图片加载失败的回调函数下一篇教程将详细介绍 Avatar 组件的核心实现原理和状态管理机制,敬请期待!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。