В моем приложении один из моих просмотров занимает больше времени, чем обычно, для загрузки (это вид с прокруткой со многими изображениями), поэтому я решил, что я хочу, чтобы пользователь знал, что происходит во время загрузки , Поэтому я добавил индикатор выполнения, который использует таймер для того, как долго он обычно загружается. Единственная проблема заключается в том, что при нажатии кнопки iPhone по-прежнему загружает представление, а затем, когда открывается новое представление, появляется индикатор выполнения и запускает таймер. Как я могу установить его так, чтобы индикатор выполнения отображался в том же виде, что и кнопка, и когда при нажатии кнопки происходит просмотр второго представления, и когда индикатор выполнения заполняется, он переходит ко второму виду. Вот код, который у меня есть.Использование Progress Bar Загрузка нового представления
- (void) button
{{
if (!self.baseSheet) {
baseSheet = [[UIActionSheet alloc]
initWithTitle:@"Please Wait"
delegate:self
cancelButtonTitle:nil
destructiveButtonTitle: nil
otherButtonTitles: nil];
[baseSheet setNumberOfRows:5];
[baseSheet setMessage:@"Loading Photos"];
UIProgressView *progbar = [[UIProgressView alloc] initWithFrame:CGRectMake(50.0f, 70.0f, 220.0f, 90.0f)];
progbar.tag = PROGRESS_BAR;
[progbar setProgressViewStyle: UIProgressViewStyleDefault];
[baseSheet addSubview:progbar];
[progbar release];
}
UIProgressView *progbar = (UIProgressView *)[self.view viewWithTag:PROGRESS_BAR];
[progbar setProgress:(amountDone = 0.0f)];
[NSTimer scheduledTimerWithTimeInterval: 0.5 target: self selector: @selector(incrementBar:) userInfo: nil repeats: YES];
[baseSheet showInView:self.view];
[[self navigationController] pushViewController:[[ScrollViewController alloc] init]
animated:YES];
}}