Перед выполнением моего приложения возникает следующая проблема. У меня есть приложение с вкладками и нажатие на каждую вкладку я могу получить доступ к соответствующему виду: например, нажатие на tab2 открывает view2. Но я могу получить доступ к VIEW2 также, нажав на кнопку на view1, что делается следующим образом:Различное поведение при доступе к представлениям через вкладки или Segues
...
[buttonToView2 addTarget:self action:@selector(gotoView2) forControlEvents:UIControlEventTouchUpInside];
...
где:
- (void)gotoView2
{
//execute segue programmatically
[self performSegueWithIdentifier: @"View2Segue" sender: self];
}
View2 имеет таблицу, которая показывает данные из массива, заполненного данными из Интернета (в viewDidAppear
метод). Итак, оба выбора tab2 или нажатия кнопки должны привести пользователя к целевому представлению2.
Это работает, но имеет другое поведение в двух случаях:
- Если я нажимаю на вкладке, таблица уже заполнена данными, пока приложение извлекает информацию из Интернета
- Если я нажимаю кнопка и я выполняю segue, стол пуст, пока приложение получает информацию из Интернета
Почему? Может быть, из-за выбора, вызываемого кнопкой, выполняется в другом потоке? Любые идеи, пожалуйста?
С уважением, Яса
Убедитесь, что вы правильно реализовали '- (void) prepareForSegue: (UIStoryboardSegue *) segue отправитель: (id) отправитель' для вашего sek (см. Полезное сообщение: http://stackoverflow.com/questions/8680453/programatically -copy-array-to-new-view-in-storyboard) – petert
В этом случае я не реализовал 'prepareForSegue', так как у меня нет информации, которая должна быть передана в представление назначения2 ... Я буду попытайтесь объяснить лучше. У меня есть: '@interface View2: UIViewController { NSArray * arrayView2; UIImage * profileImage; .... ' Если я получу доступ к этому представлению через вкладку во второй раз, все эти переменные заполняются. Если я программно получаю доступ через Segue, они будут нулевыми. – yassassin