SwiftUI List - 禁用特定行的移动?

Posted

技术标签:

【中文标题】SwiftUI List - 禁用特定行的移动?【英文标题】:SwiftUI List - disable moving of particular rows? 【发布时间】:2020-09-17 02:30:33 【问题描述】:

Edit 模式下的 SwiftUI List 中,每一行在其后沿都有一个句柄,以便该行可以在行序列中向上或向下移动。在 UIKit 中有一个实例方法 tableView(_:canMoveRowAt:) 指定哪些行包含这些句柄,哪些不包含这些句柄。

我正在寻找 SwiftUI 中的等价物。有什么想法吗?

【问题讨论】:

【参考方案1】:

您需要使用.moveDisabled(condition) 修饰符,如下例所示

    ForEach(items, id: \.self)  item in
        Text(item)
          .moveDisabled(item == "nonmovable item")    // << conditional !!
    

【讨论】:

谢谢 - 我永远不会在所有列出的 ViewModifiers 中找到它!

以上是关于SwiftUI List - 禁用特定行的移动?的主要内容,如果未能解决你的问题,请参考以下文章

在 SwiftUI 中,如何更改 List 堆叠行的方式?

如何在 SwiftUI 中禁用子视图上的特定状态更改动画

Jquery Datatables 禁用特定行的排序

如何禁用特定行的 ts 规则?

ScrollView 或 List,如何制作特定的可滚动视图 (SwiftUI)

如何启用移动但禁用 UITableView 中某些行的删除