0

假设我有一个包含 ForEach 和编号行的简单列表。像这样:

import SwiftUI

struct test: View {
    var body: some View {
        List {
            ForEach(0 ..< 100) { number in
                Text("Row \(number)")
            }
        }
    }
}

如果我想将该行提取到另一个视图怎么办:

struct ExtractedView: View {
    var body: some View {
        Text("Row \(number)")
    }
}

并在原始列表更改中

Text("Row \(number)") 

成为:

ExtractedView()

现在如何制作编号行?如何将数字传递给 ExtractedView?因为现在我收到一个错误:使用未解析的标识符“数字”

4

1 回答 1

1

你只需要在你的变量中创建一个变量ExtractedView并将这个数字传递给它:

struct test: View {
    var body: some View {
        List {
            ForEach(0 ..< 100) { number in
                ExtractedView(number: number)
            }
        }
    }
}

struct ExtractedView: View {
    let number: Int
    var body: some View {
        Text("Row \(number)")
    }
}
于 2019-11-22T03:17:54.620 回答