Как использовать индикатор активности на iPhone?
Вид индикатора активности полезен во многих приложениях.
Любые идеи о том, как добавить, активировать и отклонить отображение индикатора активности на iPhone?
Все методы для этого приветствуются здесь.
Ответы
Ответ 1
Создать:
spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
[spinner setCenter:CGPointMake(kScreenWidth/2.0, kScreenHeight/2.0)]; // I do this because I'm in landscape mode
[self.view addSubview:spinner]; // spinner is not visible until started
Начало:
[spinner startAnimating];
Остановка:
[spinner stopAnimating];
Когда вы наконец закончите, выньте счетчик из представления и отпустите.
Ответ 2
Взгляните на приложение WordPress с открытым исходным кодом. Они имеют очень многократно открываемое окно, которое они создали для отображения отображения типа "прогресс в процессе" поверх любого вида, отображаемого в настоящее время вашим приложением.
http://iphone.trac.wordpress.org/browser/trunk
Файлы, которые вы хотите:
- WPActivityIndicator.xib
- RoundedRectBlack.png
- WPActivityIndicator.h
- WPActivityIndicator.m
Затем, чтобы показать это, используйте что-то вроде:
[[WPActivityIndicator sharedActivityIndicator] show];
И скрыть с помощью:
[[WPActivityIndicator sharedActivityIndicator] hide];
Ответ 3
в отношении:
Взгляните на приложение WordPress с открытым исходным кодом. Они имеют очень многократно открываемое окно, которое они создали для отображения отображения типа "прогресс в процессе" поверх любого вида, отображаемого в настоящее время вашим приложением.
обратите внимание, что если вы используете этот код, вы ДОЛЖНЫ предоставить ВСЕ исходный код в свое приложение любому пользователю, который его запрашивает. Вы должны знать, что они могут решить переупаковать ваш код и продать его в магазине. Все это предусмотрено в соответствии с GNU General Public License (GPL).
Если вы не хотите, чтобы вас заставляли открывать исходный код, вы не можете использовать что-либо из приложения Wordpress iphone, в том числе связанное с ним окно прогресса активности, не заставляя GPL применяться к вашим собственным.
Ответ 4
Документация по этому вопросу довольно ясна. Это подкласс UIView, поэтому вы используете его, как и любое другое представление. Чтобы запустить/остановить анимацию, которую вы используете,
[activityIndicator startAnimating];
[activityIndicator stopAnimating];
Ответ 5
Я думаю, вам лучше использовать спрятаться лучше.
activityIndicator.hidden = YES
Ответ 6
Использование раскадровки -
Создать -
- Перейдите в main.storyboard(это можно найти в Навигаторе проектов слева от вашего Xcode) и перетащить "Вид активности индикатора" из библиотеки объектов.
![Activity Indicator View from Object Library]()
-
Перейдите в заголовочный файл и создайте IBOutlet для UIActivityIndicatorView -
@interface ViewController : UIViewController
@property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView;
@end
-
Установите соединение с выходами в UIActivityIndicatorView.
Начало:
Используйте следующий код, когда вам нужно запустить индикатор активности, используя следующий код в файле реализации (.m) -
[self.activityIndicatorView startAnimating];
Стоп
Используйте следующий код, когда вам нужно остановить индикатор активности, используя следующий код в файле реализации (.m) -
[self.activityIndicatorView stopAnimating];
Ответ 7
Индикатор активности 2 сек. и перейдите на следующую страницу
@property(strong,nonatomic)IBOutlet UIActivityIndicator *activityindctr;
-(void)viewDidload { [super viewDidload];[activityindctr startanimating]; [self performSelector:@selector(nextpage) withObject:nil afterDelay:2];}
-(void)nextpage{ [activityindctr stopAnimating]; [self performSegueWithIdentifier:@"nextviewcintroller" sender:self];}
Ответ 8
- (IBAction)toggleSpinner:(id)sender
{
if (self.spinner.isAnimating)
{
[self.spinner stopAnimating];
((UIButton *)sender).titleLabel.text = @"Start spinning";
[self.controlState setValue:[NSNumber numberWithBool:NO] forKey:@"SpinnerAnimatingState"];
}
else
{
[self.spinner startAnimating];
((UIButton *)sender).titleLabel.text = @"Stop spinning";
[self.controlState setValue:[NSNumber numberWithBool:YES] forKey:@"SpinnerAnimatingState"];
}
}