Я хотел бы добиться этого, когда вы запрашиваете что-то в моем приложении (например, нажатую кнопку или что-то еще), я хотел бы, чтобы он отображался в виде небольшого прямоугольника с надписью «загрузка ...», а когда загрузка завершена, он исчезает с «эффектом слайда». ". Я сделал простые мокапы, чтобы хорошо описать то, чего я пытаюсь достичь. У тебя есть какой-нибудь намек для меня? Спасибо.
ПРИМЕЧАНИЕ. Мне не нужен эффект обновления по запросу (представление загрузки отображается без прокрутки экрана, оно появляется, например, при отправке комментария)
ОБНОВЛЕНИЕ:
Я пробовал код Cirrostratus:
- (IBAction)displayLoadingScreen:(id)sender
{
NSLog(@"pressed");
UIView *loadingView = [[UIView alloc] init];
loadingView.frame = CGRectMake(0,-40,320,40);
[loadingView setBackgroundColor:[UIColor blueColor]];
[self.view addSubview:loadingView];
//animate in within some method called when loading starts
[UIView animateWithDuration:1.0
animations:^{
loadingView.frame = CGRectMake(0,0,320,40);
}
completion:^(BOOL finished) {
}];
for (int i = 0; i < 10000; i++) {
NSLog(@"%d", i);
}
//animate out within some method called when loading ends
[UIView animateWithDuration:1.0
animations:^{
loadingView.frame = CGRectMake(0,-40,320,40);
}
completion:^(BOOL finished){
}];
}
Почему загрузочное представление скользит после цикла for? Если вы попробуете, прежде чем он напечатает цикл for, а после выполнит две анимации. Идеи?
ОБНОВЛЕНИЕ 2
- (void)stopLoading {
[UIView animateWithDuration:1.0
animations:^{
loadingView.frame = CGRectMake(0,-40,320,40);
}
completion:^(BOOL finished){
}];
}
- (void)startLoading {
loadingView.frame = CGRectMake(0,-40,320,40);
[loadingView setBackgroundColor:[UIColor blueColor]];
[self.view addSubview:loadingView];
//animate in within some method called when loading starts
[UIView animateWithDuration:1.0
animations:^{
loadingView.frame = CGRectMake(0,0,320,40);
}
completion:^(BOOL finished) {
}];
sleep(5);
[self stopLoading];
}
- (IBAction)displayLoadingScreen:(id)sender
{
NSLog(@"button pressed");
[self startLoading];
}
UIAnimation
(и использовать фреймворк QuartzCore). - person Raptor   schedule 03.11.2011EGOTableViewPullRefresh
. - person Raptor   schedule 03.11.2011