我如何修复代号一中的简单逻辑错误?

how do i fix simple logic error in codename one?

我是代号一的新手。我正在尝试构建一个我卡在某个点上的应用程序。如您所见,在附加的第一个屏幕截图中,有一个名为 Environment 的手风琴,在 Environment 内部有一个 Picker。其他手风琴也有同样的情况。我想要做的是当用户 selects 来自选择器的任务之一时,其他手风琴应该是不可编辑的。例如,用户 selected 从环境手风琴中捡起一个垃圾,他不应该 select 任何其他手风琴。

在第二张图片中,我不希望用户 select 不止一种类型。 有人可以帮我吗?

https://imgur.com/EYzDLP1

https://imgur.com/SAcu0UN

我试着用 if else 循环来做,但它越来越糟。

预期结果: 用户应该能够 select 只有一种契约类型,如图所示。

实际结果: N/A

我猜您对此处提到的选择器箭头有疑问:https://github.com/codenameone/CodenameOne/issues/2775

该问题还解释了禁用它们的过程。

您还可以根据手风琴的选择,将其他组件设置为enabled/disabled。

使用切换按钮(RadioButton 以选择正确的类别)然后对所有条目使用一个 Picker 可能更有意义。