У меня есть контроллер навигации. Во втором представлении этого контроллера я создал кнопку «Назад», действие которой называется «назад». В этом методе я называю метод popViewControllerAnimated, и проблема заключается в том, что после «popViewControllerAnimated» у меня есть другое действие, которое также вызывается в одно и то же время, но после «popViewControllerAnimated», и они показывают мне, но мне нужно чтобы заблокировать его.После вызова метода popViewControllerAnimated второй метод
Когда я нажать кнопку:
- (void)back {
[socketIO sendEvent:@"exit" withData:nil]; // Send data to server
[self.navigationController popViewControllerAnimated:NO];
}
И делегат для разбора результата от сервера:
- (void)socketIO:(SocketIO *)socket didReceiveEvent:(SocketIOPacket *)packet {
if ([packet.name isEqualToString:@"disconnect"]) {
NSLog(@"Exit"); // This code also works, but it works after "popViewControllerAnimated", but I want to block it.
}
}
Схема:
- Пользователь нажимает назад
- App отправки на сервер событий «выход»
- popViewControllerAnimated
- App получил ответ от сервера и показать результат
Но как пункт 4 в списке работ после того, как «popViewControllerAnimated», если я закрою что View Controller? Как я могу исправить это поведение?
Я использую singleton, но я использую его для подключения к серверу, но работать с контроллером view из singleton неудобно. Или вы можете показать пример, как это можно сделать четко? – user2058653