Tôi đang cố gắng để bỏ một bộ điều khiển xem như thế này:dismissViewControllerAnimated khối hoàn thành không được gọi
[composeViewController dismissViewControllerAnimated:YES completion:^{
NSLog(@"Hello"); // Never outputted
}];
Bộ điều khiển xem là bị sa thải, nhưng đối với một số lý do khối hoàn không bao giờ được gọi.
Tôi chưa bao giờ gặp bất kỳ sự cố nào với khối hoàn thành không được gọi với các bộ điều khiển chế độ xem khác. Tuy nhiên,
Bộ điều khiển chế độ xem này là "đặc biệt" vì nó được thêm dưới dạng bộ điều khiển chế độ xem con (mà trước đó tôi chưa làm việc với ứng dụng của mình). Điều này có áp đặt bất kỳ tác dụng phụ nào tại sao khối hoàn thành không được gọi?
Nó bổ sung như sau:
UIViewController *rootVC = [UIApplication sharedApplication].delegate.window.rootViewController;
[rootVC addChildViewController:self];
[rootVC.view addSubview:self.view];
[self didMoveToParentViewController:rootVC];
'addChildViewController: 'thực sự đẩy mà điều khiển xem vào menu ngăn xếp. Bạn phải bật nó ra trước khi khối đó có thể kích hoạt – CodaFi
Tôi đã cố gắng thực hiện '[composeViewController removeFromParentViewController];' (tôi có thể thấy rằng nó bị xóa khỏi thuộc tính 'childViewControllers' của' rootViewController') trước khi gọi 'dismiss ...' nhưng hoàn thành khối vẫn không được gọi. –
po ngăn xếp điều hướng, sau đó. – CodaFi