Codenameone 从轻型选择器中移除上下箭头

Codenameone 从轻型选择器中移除上下箭头,codenameone,Codenameone,我在轻量级的选择器中发现了两个箭头,它们似乎用于从一个字段转到另一个字段 在我的编辑器中,这种行为确实存在缺陷,导致一些客户出现编码错误。有没有办法隐藏/删除它们?如果可能,在整个应用程序中 我试图覆盖选择器,并将isEditable的返回设置为false,因为它似乎可以控制这些箭头的添加,但没有起到任何作用 提前谢谢 编辑:在这种情况下,我将使用轻型选择器和类型选择器(类型)字符串,但我希望在所有轻型选择器上控制此行为 使用static createStrings方法从PickerCompon

我在轻量级的
选择器中发现了两个箭头,它们似乎用于从一个字段转到另一个字段

在我的编辑器中,这种行为确实存在缺陷,导致一些客户出现编码错误。有没有办法隐藏/删除它们?如果可能,在整个应用程序中

我试图覆盖
选择器
,并将
isEditable
的返回设置为
false
,因为它似乎可以控制这些箭头的添加,但没有起到任何作用

提前谢谢

编辑:在这种情况下,我将使用轻型
选择器
和类型
选择器(类型)字符串
,但我希望在所有轻型
选择器
上控制此行为

使用
static createStrings
方法从
PickerComponent
实例化选择器

这是这个特定选择器的屏幕截图,我想去掉的按钮位于红色矩形内:

编辑2:经过一些代码分析后,我发现如果所包含的
表单的
选项卡迭代器
返回此选择器的上一个和下一个组件,则会显示这些箭头。我真的不明白我怎么会梦见isEditable控制了这一切

可以重写
表单的
getTabIterator
,但是
TabIterator
(表单的嵌套类)的构造函数是
private
,在我们的类中无法访问,我们需要它,因为调用
TabIterator
实例时没有
null
检查,所以我们不能返回
null

我已经尝试将
getTabIterator
的参数强制为
null
,但是
getNext
getPrevious
方法的
TabIterator
仅在组件为
null
且组件
列表
时返回
null
(作为
TabIterator
构造函数的第二个参数传递)为空。但由于构造函数是
private
列表从来都不是空的,因为它是由
getTabIterator
填充的


死胡同?

这主要是为在多个输入字段之间无缝分页而设计的。这似乎不是应该的可插拔方式。您可能应该提交RFE,以便我们可以提供一种自定义方法

您可以在以下问题跟踪程序中提交RFE:


可能的解决方法是调用
remove()
在选项卡迭代器上,直到其为空。

屏幕截图将有助于…以及您在哪个操作系统/设备上使用的选择器类型。您使用的代码等。我添加了一些详细信息和屏幕截图,我在iOS、Android和模拟器上使用这些选择器。在
选项卡迭代器上使用删除,直到其为空是很难的,但会起作用,这是最好的解决方法(根据Steve的说法,禁用箭头的正确方法是使用组件选择器并将所有首选选项卡索引设置为-1。快速执行此操作的代码是:
ComponentSelector.select(“*”,form)。每个(c->c.setPreferredTabIndex(-1));
。当所有选项卡索引设置为-1时,
TabIterator
为空,箭头消失。