Reputation: 289
I want to create a BLE scanner, and follow Start Developing iOS Apps (Swift) at developer.apple.com,
when session "Create a Table View", I got an error here,
BLEMember.swift
import UIKit
class BLEMember {
var rssi: Int
var uuid: String
init (rssi:Int, uuid:String){
self.rssi = rssi
self.uuid = uuid
}
}
BLEScanTableViewController.swift
...
private func loadBLEMembers() {
var members = [BLEMember]()
guard let member1 = BLEMember(rssi: 65, uuid: "testing ble 1") else {
fatalError("Unable to instantiate meal1")
}
guard let member2 = BLEMember(rssi: 35, uuid: "testing ble 2") else {
fatalError("Unable to instantiate meal2")
}
guard let member3 = BLEMember(rssi: 45, uuid: "testing ble 3") else {
fatalError("Unable to instantiate meal2")
}
members += [member1, member2, member3]
}
and error happen,
initializer for conditional binding must have optional type, not "BLEMember"
how to fix it? thanks!
Upvotes: 0
Views: 4513
Reputation: 1859
let member1 = BLEMember(rssi: 65, uuid: "testing ble 1")
always success. You don't need use guard here!
private func loadBLEMembers() {
var members = [BLEMember]()
let member1 = BLEMember(rssi: 65, uuid: "testing ble 1")
let member2 = BLEMember(rssi: 35, uuid: "testing ble 2")
let member3 = BLEMember(rssi: 45, uuid: "testing ble 3")
members += [member1, member2, member3]
}
Upvotes: 3