繁体   English   中英

在 SwiftUI 中选择列表行

[英]Make a list row selectable in SwiftUI

我正在 SwiftUI 中创建一个包含自定义行的列表。 当我点击其中一个时,我希望该行变成浅灰色,直到检测到另一个点击。

简单的非自定义列表也不会发生这种情况。

这是我的清单:

List{
        ForEach(blocks){ block in
            BlockRow(block: block)
        }
        .onDelete(perform: delete)
        .onMove(perform: day.move)
}

当我点击其中一项时,没有任何反应。 如果我用 storyBoards 创建一个简单的列表,我会得到我想要的行为:

期望的行为

嘿,所以你在 3 个月前问过这个问题,所以我希望你能在某个地方得到答案或者从那时起就想通了,但是为了让按钮可点击,我能够使用它让它工作,

List {
    Button (action: {
        //Whatever action you want to perform
    }) {
        //Code to present as the cell
    }
}

我可能会根据您的代码尝试以下操作,

List (blocks) { block in
  Button (action: {
    //perform button action
  }) {
    //How the cell should look
    BlockRow(block: block)
  }
}
.onAppear()
.onDelete()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM