1.3 KiB
1.3 KiB
470 ProfileEditor
个人资料编辑。
用途
头像、名称与简介;与已保存版本不同时显示未保存标记;保存、放弃与更换头像由调用方处理。
最小示例
saved := mujica.Profile{Name: "Sakiko", Bio: "Keyboard."}
profile := saved
view := func(c *ui.Context) {
mujica.Use(c, mujica.Settings{})
if mujica.ProfileEditor(c, &profile, mujica.ProfileEditorOptions{Saved: saved}).Save() {
saved = profile
}
}
ui.Render(view, 400, 300, 1)
参数
| 字段 | 类型 | 默认值 | 含义 |
|---|---|---|---|
p |
*Profile |
必填 | Name、Bio。 |
Saved |
Profile |
零值 | 已保存的资料。 |
Avatar |
*ui.Bitmap |
nil | 头像;nil 显示首字母。 |
BioLimit |
int |
160 | 可保存的简介字数上限;超限保留输入并阻止保存。 |
Saving |
bool |
false | 保存中,阻止编辑。 |
Disabled |
bool |
false | 禁用。 |
状态
已保存、未保存(菱形与文字)、名称为空、简介超限、保存中、禁用。
事件
Save()、ChangeAvatar()、Discarded()。
键盘操作
Tab 依次经过更换头像、名称、简介、放弃、保存。
限制
- 头像选择与上传由调用方完成,可配合 FilePicker。