Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将数字线移动到另一个视图_Ios_Swift_Swiftui - Fatal编程技术网

Ios 将数字线移动到另一个视图

Ios 将数字线移动到另一个视图,ios,swift,swiftui,Ios,Swift,Swiftui,大家好,早上好,我是一个新手,刚加入迅捷 我有表视图(列表)的名称和行号,它的工作很好 我想在何时加入任何名称,请在第二个视图中查看编号 我的代码在这里 import SwiftUI struct ContentView: View { var mynames = allDatabase var body: some View { NavigationView { List { ForEach(myname

大家好,早上好,我是一个新手,刚加入迅捷

我有表视图(列表)的名称和行号,它的工作很好

我想在何时加入任何名称,请在第二个视图中查看编号

我的代码在这里

import SwiftUI

struct ContentView: View {
    var mynames = allDatabase
    var body: some View {
        NavigationView {
            List {
                ForEach(mynames[1 ... 4] , id: \.self) { namm in

                    NavigationLink(destination: DDetail(name: namm.name)) {

                        HStack(spacing: 5.0) {

                            Text("\(self.mynames.Index(of: namm)) -")
                            Text("\(namm.name)")

                        }
                    }
                }
            }
        }
    }
}

struct DDetail: View {
    var name = ""
    var body: some View {
        VStack {
            Text("This is Number :")
            Text(name)
        }
    }
}

struct Database: Hashable {
    var name: String
}

let allDatabase = [
    Database(name: "Joy1"),
    Database(name: "Joy2"),
    Database(name: "Joy3"),
    Database(name: "Joy4"),
    Database(name: "Joy5"),
    Database(name: "Joy6"),
    Database(name: "Joy7")
]
替换

NavigationLink(destination: DDetail(name: namm.name)) {


首先,提问时要更具体,这样人们可以更容易地帮助你

无论如何

您正在DDetail中创建一个新的名称,这将导致一个空名称。因为您想要传递数据,所以不需要声明新变量。以下代码将修复此问题:

struct DDetail: View {

    // Edited following line:
    var name: String

    var body: some View {
        VStack {
           Text("This is Number :")
           Text(name)
        }
   }
}
如果要传递号码而不是名称,请使用:

NavigationLink(destination: DDetail(name: self.mynames.firstIndex(of: namm)!))

请尝试澄清您的问题我不明白您的问题无法将“Array.Index”(又名“Int”)类型的值转换为预期的参数类型“String”,将名称解析为字符串或使用“(self.mynames.firstIndex(of:namm)!)”
NavigationLink(destination: DDetail(name: self.mynames.firstIndex(of: namm)!))