我有以下錯誤:無法將類型Class.user的價值類型爲字符串的預期參數
正如你在圖上看到的,與上面的代碼感興趣的部分是本
class CourseClass: UITableViewController, CLLocationManagerDelegate, MKMapViewDelegate {
@IBOutlet weak var map: MKMapView!
struct User {
var name: String
var images: UIImage
var coordinate: (Double, Double)
var type: String
}
/* var place = ["Caffè Spagar", "Duks", "Posta station", "Barnum", "Elephant Club", "Cinema", "Space", "Andromeda", "Rodolf", "Devil Chair"] */
var rows = 0
var users = [User]()
let CS = User(name: "Caffè Spagar", images: UIImage(named: "Caffè Spagar.png")! , coordinate:(12345,54678), type: "Pub")
let D = User(name: "Duks", images: UIImage(named: "Duks.png")! , coordinate:(13345,54128), type: "Shopping")
let PS = User(name: "Posta station", images: UIImage(named: "Posta station.png")! , coordinate:(18795,34556), type: "Resturant")
let B = User(name: "Barnum", images: UIImage(named: "Barnum.png")! , coordinate:(46655,43554), type: "Pub")
let EC = User(name: "Elephant Club", images: UIImage(named: "Elephant Club.png")! , coordinate:(12325,21435), type: "Disco")
let C = User(name: "Cinema", images: UIImage(named: "Cinema.png")! , coordinate:(11235,12343), type: "Cinema")
let S = User(name: "Space", images: UIImage(named: "Space.png")! , coordinate:(12345,66432), type: "Cinema")
let A = User(name: "Andromeda", images: UIImage(named: "Andromeda.png")! , coordinate:(64545,23443), type: "Sport")
let R = User(name: "Rodolf", images: UIImage(named: "Rodolf.png")! , coordinate:(64545,34358), type: "Shopping")
let DC = User(name: "Devil Chair", images: UIImage(named: "Devil Chair.png")! , coordinate:(56656,54678), type: "Shopping")
override func viewDidLoad() {
super.viewDidLoad()
map.showsUserLocation = true
map.delegate = self
users.append(CS)
users.append(D)
users.append(PS)
users.append(B)
users.append(EC)
users.append(C)
users.append(S)
users.append(A)
users.append(R)
users.append(DC)
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
insertRowsMode3()
}
func insertRowsMode2() {
for i in 0..<users.count {
insertRowMode2(ind: i, str: users[i])
}
}
func insertRowMode2(ind:Int,str:String) {
let indPath = IndexPath(row: ind, section: 0)
rows = ind + 1
tableView.insertRows(at: [indPath], with: .right)
}
我該如何修改才能使其工作?我想知道這是否也是在代碼中實現座標的正確方法。
您需要添加使用像'網友[我] .name'。 'users [i]'給你的用戶對象不是字符串對象 – Priyal