приложение для iPhone, запуск другого кода при переключении представления - PullRequest
0 голосов
/ 18 августа 2010

В xCode, при написании приложения для iPhone, я должен НЕ ставить код после / во время переворачивания представления?

Кажется, у меня случаются случайные сбои ....

{
    FlipsideViewController *controller = [[FlipsideViewController alloc] initWithNibName:@"FlipsideView" bundle:nil];
    controller.delegate = self;

    controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:controller animated:YES];

    [controller release];

    ////////////////// Should I not put any code here???
    // Code that takes 0.0001 secs to run?   Or 0.1 secs?   Or 1-2 secs?
}

или при переворачивании назад:

{
    [self.delegate flipsideViewControllerDidFinish:self];   

    ////////////////// Should I not put any code here???
    // Code that takes 0.0001 secs to run?   Or 0.1 secs?   Or 1-2 secs?

}

Ответы [ 2 ]

0 голосов
/ 19 августа 2010

Как @ tadej5553 сказал, что ваш код будет выполняться после завершения переворачивания.Но имейте в виду, что если вы поместите код, выполнение которого занимает 2 секунды, то переворот завершится, но пользовательский интерфейс будет заблокирован и не отвечает в течение этих 2 секунд.Так что это должно быть сделано в другом потоке или, по крайней мере, использовать шаблон делегата.Если вы говорите менее 0,1 секунды, то, на мой взгляд, было бы неплохо запустить его там.Еще больше и быстрый пользователь заметит отставание.Если ваше представление не может быть использовано до тех пор, пока операция не будет завершена, тогда я все равно сделаю код в другом потоке, но затем просто покажу UIAlertView с UISpinner и без кнопок, чтобы пользователь не мог отклонить его.Только когда ваш код закончен, он отклонит UIAlertView

0 голосов
/ 18 августа 2010

Если вы уверены, что код может влиять на производительность графического приложения, вы можете использовать многопоточность. Об этом есть очень хорошее руководство в документации. Посмотри.

Но я думаю, что это не повлияет на производительность. Ваш код будет выполнен после переворота. Хотя, когда дело доходит до графич, вы никогда не можете быть полностью уверены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...