相关疑难解决方法(0)

SwiftUI | 使用 onDrag 和 onDrop 对单个 LazyGrid 中的项目重新排序?

我想知道是否可以使用View.onDrag和手动View.onDrop添加拖放重新排序LazyGrid

虽然我能够使用 使每个项目都可以拖动onDrag,但我不知道如何实现放置部分。

这是我正在试验的代码:

import SwiftUI

//MARK: - Data

struct Data: Identifiable {
    let id: Int
}

//MARK: - Model

class Model: ObservableObject {
    @Published var data: [Data]
    
    let columns = [
        GridItem(.fixed(160)),
        GridItem(.fixed(160))
    ]
    
    init() {
        data = Array<Data>(repeating: Data(id: 0), count: 100)
        for i in 0..<data.count {
            data[i] = Data(id: i)
        }
    }
}

//MARK: - Grid

struct ContentView: View {
    @StateObject private var model = Model()
    
    var body: some …
Run Code Online (Sandbox Code Playgroud)

collectionview ios swift swiftui xcode12

25
推荐指数
6
解决办法
8946
查看次数

标签 统计

collectionview ×1

ios ×1

swift ×1

swiftui ×1

xcode12 ×1