【发布时间】:2017-01-30 17:15:38
【问题描述】:
使用 CodenameOne,
我有一个用户需要填写的表单。然而,所有组件实际上都是代表自定义功能的容器。例如,我将在Container 上同时添加一个TextField 和一个Button,并且我会将Container 用作“Component”。这允许我通过组合现有的Components 创建更高级的功能。
有必要这样做的一个很好的例子是存在 3 个TextFields 或TextFields 和ComboBoxes 的组合的自定义日期输入字段。
所有这些都作为一个“单元”,以便用户选择联系人或填写自己的联系人。 Buttons打开Dialog弹窗等
当用户使用 Android 键盘时,我的问题就出现了。如果此联系人Object 是第二个“字段”并且用户按下 Android 键盘上的“下一步”按钮,则应用程序不知道要关注哪个字段。
此外,如果其中一个字段是ComboBox 或Button,并且用户按下next 以到达Component,则键盘不会关闭,而是删除“下一步”按钮,将其替换为返回按钮或表情选择器。
用户将按下第一个字段,键盘显示,当用户按下下一个时,键盘的下一步按钮消失,因为紧接的下一个字段恰好是 Button 或 ComboBox。
有没有办法改变焦点索引,或者省略某些字段以这种方式获得焦点?我试着把整个东西变成Component,但这不允许我结合其他Components。即使可以将父 Container 设为 Component,我将如何解决这个特定问题?
【问题讨论】:
标签: codenameone