![](/img/trans.png)
[英]Main Thread Checker warning with CoreMotion, only appearing on 2018 model iPhones
[英]Swift Local Notifications Checker Main Thread Only
我有一個完成返回布爾值的方法。 但我不知道如何解決這個錯誤。
錯誤
UISwitch.isOn must be used from main thread only
按鈕動作
@IBAction func notificationSwitch(_ sender: Any) {
LocalNotification().checkEnabled(completion: { (success) -> Void in
// When download completes,control flow goes here.
if success == false{
print("Cant Turn On")
self.notificationToggle.isOn = false
} else {
print("Can Turn On")
if self.notificationToggle.isOn == true {
self.notificationToggle.isOn = false
} else {
self.notificationToggle.isOn = true
}
}
})
}
也已經嘗試將LocalNotifications()....
包裝在DispatchQueue.main.async
中,但仍然出現相同的錯誤
您快到了。 不是checkEnabled
需要包裝在調用中才能進入主線程,而是它“內部”的東西:
LocalNotification().checkEnabled(completion: { (success) -> Void in
DispatchQueue.main.async {
if success == false {
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.