【问题标题】:onDelete with stored String Array [closed]onDelete 与存储的字符串数组 [关闭]
【发布时间】:2020-12-12 07:42:23
【问题描述】:

我使用 Simone 的解决方案来存储字符串数组并将它们呈现在 List 中:

How to Store Nested Arrays in @AppStorage for SwiftUI

我尝试在列表中添加行删除功能:

    .onDelete(perform: removeRows)
    
func removeRows(at offsets: IndexSet) {
        getStrings(data: albums).remove(atOffsets: offsets)
    }

我知道这不起作用,因为函数调用返回一个不可变的值,我试图改变它。如何解决?

【问题讨论】:

  • 你会显示所有上下文代码吗?

标签: swiftui


【解决方案1】:

只需添加以下删除功能。您首先获取所有字符串,然后在偏移处删除,然后将其存储回来。

func removeRows(at offsets: IndexSet) {
    var tmpAlbums = getStrings(data: albums)
    tmpAlbums.remove(atOffsets: offsets)
    albums = Storage.archiveStringArray(object: tmpAlbums)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-29
    • 2012-09-14
    • 2021-07-19
    • 1970-01-01
    • 2022-01-02
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    相关资源
    最近更新 更多