弹出输入框
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-06-08 12:23:40 |
👁️ 阅读: 10
根据浮生梦老师的前端课程内容,要实现弹出输入框功能,可以使用996引擎提供的通用弹窗接口。以下是具体实现方法:
```lua
-- 创建通用弹窗数据
local data = {
str = "请输入内容:", -- 弹窗提示文本
btnType = 2, -- 按钮类型:1="确定",2={"确定","取消"}
btnDesc = {"确认", "取消"}, -- 按钮描述
showEdit = true, -- 显示输入框
editParams = {
inputMode = 6, -- 键盘编辑类型
maxLength = 20, -- 最大输入长度
str = "" -- 默认文本内容
},
callback = function(btnId, extraParams)
if btnId == 1 then -- 点击了确认按钮
local inputText = extraParams.editStr -- 获取输入框内容
SL:print("用户输入的内容是:" .. inputText)
else
SL:print("用户取消了输入")
end
end
}
-- 打开通用弹窗
SL:OpenCommonTipsUI(data)
```
**参数说明:**
1. **str**:弹窗显示的提示文本
2. **btnType**:按钮类型
- 1:只显示"确定"按钮
- 2:显示"确定"和"取消"按钮
3. **btnDesc**:按钮文本描述
4. **showEdit**:是否显示输入框,设置为true才会显示
5. **editParams**:输入框参数
- inputMode:键盘编辑类型(6表示普通文本输入)
- maxLength:最大输入字符数
- str:输入框默认文本
6. **callback**:按钮回调函数
- btnId:点击的按钮ID(1=第一个按钮,2=第二个按钮)
- extraParams.editStr:输入框中的文本内容
**使用示例:**
```lua
-- 简单的输入框示例
local simpleData = {
str = "请输入你的名字:",
btnType = 2,
showEdit = true,
editParams = {
inputMode = 6,
maxLength = 10,
str = "玩家"
},
callback = function(btnId, extraParams)
if btnId == 1 then
SL:print("你好," .. extraParams.editStr)
end
end
}
SL:OpenCommonTipsUI(simpleData)
```
**注意事项:**
1. 输入框的最大长度可以根据需要调整
2. 回调函数中的extraParams参数包含了用户输入的内容
3. 如果不需要输入框,将showEdit设置为false即可
4. 按钮类型和描述可以自定义
这个通用弹窗接口已经封装好了完整的输入框功能,包括键盘弹出、文本输入、确认取消等交互,直接调用即可使用。
← 返回问答库