MujicaUI

Agent Ops & Motion · #294

Typewriter 浅色主题渲染快照
浅色 · 渲染快照
Typewriter 深色主题渲染快照
深色 · 渲染快照

294 Typewriter 打字机

用途

逐字显示文本,可调速度、可跳过、完成时通知;文本增长时从当前位置继续。

最小示例

view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	r := feedback.Typewriter(c, "The court assembles at dusk.", feedback.TypewriterOptions{Speed: 30, Skippable: true})
	if r.Changed() {
		// show the next message
	}
}
ui.Render(view, 400, 300, 1)

签名:func Typewriter(c *ui.Context, text string, opts TypewriterOptions) ChoiceResult

参数

TypewriterOptions

字段类型默认值含义
Speedfloat640(即每秒 40 字)速度;须为有限值,并产生 1 ns 到 time.Duration 上限之间的正间隔。非法值 panic。
Skippableboolfalse显示“跳过”按钮。

返回 ChoiceResult,含 Element。

状态

  • 按定时请求帧,不连续重绘。
  • 整段文本作为名称朗读,不逐字朗读。
  • 减少动画:直接显示全文。

事件

  • Changed():全文显示完的那一帧(含跳过)。

键盘操作

  • “跳过”按钮用 Tab 到达,Enter 或 Space 跳过。

限制

  • 文本被替换为不以旧文本开头的内容时从头开始。