Во время реализации моего приложения я столкнулся со следующей проблемой.
У меня есть приложение с вкладками и, нажимая на каждую вкладку, я могу получить доступ к соответствующему представлению: например, нажатие на вкладку 2 открывает представление 2. Но я могу получить доступ к view2 также, нажав на кнопку view1, которая сделана следующим образом:
...
[buttonToView2 addTarget:self action:@selector(gotoView2) forControlEvents:UIControlEventTouchUpInside];
...
где:
- (void)gotoView2
{
//execute segue programmatically
[self performSegueWithIdentifier: @"View2Segue" sender: self];
}
View2 имеет таблицу, которая показывает данные массива, заполненного данными из Интернета (в методе viewDidAppear
).
Таким образом, как выбор tab2, так и нажатие кнопки должны привести пользователя к представлению назначения 2.
Это работает, но ведет себя по-разному в двух случаях:
- Если щелкнуть вкладку, таблица уже заполнена данными, а приложение получает информацию из Интернета
- Если я нажимаю кнопку и выполняю переход, таблица пуста, а приложение извлекает информацию из Интернета
Почему? Может быть, из-за селектора, вызываемого кнопкой, выполняется другой поток?
Есть идеи, пожалуйста?
С уважением,
Яс