ios - UIView animation completion block not called -


When I call the following code from the first transmission queue, not called the full block.

  - (zero) viewDidoadload {[Super Viewedload]; Dispatch_QUE_itialize_queue; Initialize_queue = dispatch_queue_create ("init", NULL); Sending_aational (initial_u, ^ {_onInit = YES; _isRunning = NO; [auto initiation]; _onInit = NO;}); } - (zero) start progress {if (! _isRunning) {_isRunning = YES; NSLog (@ "Start"); [UIView animated clutter: 0.5 Animation: ^ {self.progressStatusButton.hidden = NO; Self.activityLeftConstraint.constant = _activityLeftSpace; Self.activityWidthConstraint.constant = _activityWidth; Self.buttonWidthConstraint.constant = _progressStatusButtonWidth; Self. ButtonLeftConstraint.constant = _progressStatusButtonLeftSpace; Self.activityView.alpha = 1.0; } Closing: ^ (BOOL Finish) {NSLog (@ "Animating Start"); [Self. Activity] introduction]; }]; }}  

When I delete the dispatch_aync method and complete the start progress method in viewDidLoad Is it complete, how can I correct my code called block?
I tried to use dispatch_async (dispatch_get_main_queue (), ..) to change sending_assican , then called the complete block, but I I would like to execute asynchronous start progress method.

Please tell me

All things related to GUI are called by the main thread Should be pushed / pushed into the main line In other case the expected behavior is not guaranteed.

Then you should use

  dispatch_get_main_queue ()  

, the animation always executes asynchronous I do not think you There is a separate queue for this.


Comments