2016-03-27 3 views
1

Calling разблокировки устройство не работает печатает «unlockCalled» много раз, а затем дает эту ошибку:activityIndicators и UIApplication.sharedApplication()

2016-03-27 14:20:45.976 xxx[1002:57886] -[UIApplication endIgnoringInteractionEvents] called without matching -beginIgnoringInteractionEvents. Ignoring. 

Где я буду неправильно?

var activityIndicator = UIActivityIndicatorView() 

func lockDevice(){print("lockCalled") 
    activityIndicator = UIActivityIndicatorView(frame: self.view.frame) 
    activityIndicator.backgroundColor = UIColor(white: 1.0, alpha: 0.5) 
    activityIndicator.center = self.view.center 
    activityIndicator.hidesWhenStopped = true 
    activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray 
    view.addSubview(activityIndicator) 
    activityIndicator.startAnimating() 
    UIApplication.sharedApplication().beginIgnoringInteractionEvents() 
} 
func unlockDevice(){ 
    print("unlockCalled") 
    activityIndicator.stopAnimating() 
    UIApplication.sharedApplication().endIgnoringInteractionEvents() 
} 
+0

Ну, сообщение об ошибке довольно понятно ... где (и когда) вы называете эти функции? – Alladinian

+0

i lockDevice() затем извлекает данные из Интернета в течение 5-6 секунд, после чего i unlockDevice(), но ActivityIndicator не исчезнет, ​​и он все равно игнорирует мои события. @Alladinian –

+0

Вы можете установить контрольную точку в своем обратном вызове, чтобы проверить проблему. Кроме того, убедитесь, что 'unlockDevice()' вызывается в основном потоке. – Alladinian

ответ

0

Благодаря @Alladinian

dispatch_async(dispatch_get_main_queue(), {() -> Void in 
    self.unlockDevice() 
}) 
Смежные вопросы