ios - 在 SwiftUI 中绑定两个选择器并具有来自两者的唯一值
问题描述
我正在尝试创建 2 个选择器,一个在根据第一个选择器的索引更新第二个选择器的值变化时...
当我更改第一个选择器的值时,第二个选择器会相应更新。
问题?当我从第二个选择器中选择一个项目时,我得到了index out of range
错误。错误很明显,第二个选择器中的项目比第一个多,它们都绑定到同一个数据集。
因此,当第一个选择器中的 $selectedSubsection 发生变化时,第二个选择器获取相应的数据。
现在,我如何允许第二个选择器对新内容进行一些选择,以便 $selectedSubsection 不会改变?
Picker(selection: $selectedSubsection, label: Text("Subsection")) {
ForEach(0 ..< self.subsections.count) {
Text(self.subsections[$0].name)
}}
Picker(selection: $selectedSubsection, label: Text("Subsection")) {
ForEach(0 ..< self.subsubsections.count) {
if self.subsubsections[$0].belongs_to == self.subsections[self.selectedSubsection].id
{
Text(self.subsubsections[$0].details)
}
}}
另外,我如何从第二个选择器中获取价值?
解决方案
推荐阅读
- java - 使用 Spring WebClient 响应式读取行
- javascript - 如何在页面加载/提交时将复选框设置为默认 false?
- c - UCI C API - 如何通过只运行一个程序一次来设置多个选项
- powershell - 将参数数组传递给 powershell.exe
- database - 卡蒙达数据库。保存 id 而不是对象
- sql - ORA-01417 - 两个外部连接错误。新的连接语法?
- c# - 如何在winforms中打印列或行跨越的datagridview
- javascript - Angular 8 从其上下文之外访问数据并检测更改
- python - 如何通过 python 脚本修改网页浏览历史?
- python - 如何正确连接两个一维数组而不展平?