[英]iOS Swift: init not being fired?
我有一堂簡單的課:
import UIKit
class BTManager: NSObject{
var allowTX = false
override init(){
super.init()
print("Init BTManager")
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("connectionChanged:"), name: BLEServiceChangedStatusNotification, object: nil)
btDiscoverySharedInstance
}
func connectionChanged(notification: NSNotification) {
// Connection status changed. Indicate on GUI.
let userInfo = notification.userInfo as! [String: Bool]
dispatch_async(dispatch_get_main_queue(), {
// Set image based on connection status
if let isConnected: Bool = userInfo["isConnected"] {
if isConnected {
self.allowTX = true
variables.connected = true
} else {
self.allowTX = false
variables.connected = false
}
}
});
}
func sendSerial(serial: String) {
// 1
if !allowTX {
return
}
if let bleService = btDiscoverySharedInstance.bleService {
bleService.sendSerial(serial)
}
}
}
(不要介意btDiscoverySharedInstance,那是另一個類)
當我調用var foo = BTManager()
,在控制台中看不到“ Init BTManager”。 這是為什么? 我不知道為什么這行不通...
我從結構調用初始化器-顯然swift不喜歡那樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.