web-dev-qa-db-fra.com

Comment utiliser la vue d'indicateur d'activité sur iPhone?

Une vue d'indicateur d'activité est utile dans de nombreuses applications . Avez-vous des idées sur la façon d'ajouter, d'activer et de désactiver une vue d'indicateur d'activité sur iPhone?

Toutes les méthodes pour cela sont les bienvenues ici.

65
Chilly Zhong

Créer:

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

Début:

[spinner startAnimating]; 

Arrêtez:

 [spinner stopAnimating];

Lorsque vous avez fini, retirez le cône de la vue et relâchez-le.

121
Jane Sales

Jetez un coup d'œil à l'application open source WordPress. Ils ont créé une fenêtre très réutilisable pour afficher un affichage de type "activité en cours" par-dessus la vue actuellement affichée par votre application.

http://iphone.trac.wordpress.org/browser/trunk

Les fichiers que vous voulez sont:

  • WPActivityIndicator.xib
  • RoundedRectBlack.png
  • WPActivityIndicator.h
  • WPActivityIndicator.m

Ensuite, pour le montrer, utilisez quelque chose comme:

[[WPActivityIndicator sharedActivityIndicator] show];

Et cacher avec:

[[WPActivityIndicator sharedActivityIndicator] hide];
10
Lounges

en ce qui concerne:

Jetez un coup d'œil à l'application open source WordPress. Ils ont créé une fenêtre très réutilisable pour afficher un affichage de type "activité en cours" par-dessus la vue actuellement affichée par votre application.

notez que si vous utilisez ce code, vous DEVEZ fournir TOUT le code source à votre propre application à tout utilisateur qui le demande. Vous devez savoir qu'ils peuvent décider de reconditionner votre code et de le vendre sur le magasin eux-mêmes. Tout cela est prévu dans les termes de la GNU licence publique générale (GPL).

Si vous ne voulez pas être obligé d’ouvrir votre code source, vous ne pouvez rien utiliser dans l’application wordpress pour iphone, y compris la fenêtre de progression de l’activité référencée, sans forcer la GPL à s’appliquer à la vôtre.

9
Daniel Llewellyn

La documentation à ce sujet est assez claire. C'est une sous-classe UIView donc vous l'utilisez comme n'importe quelle autre vue. Pour démarrer/arrêter l'animation que vous utilisez

[activityIndicator startAnimating];
[activityIndicator stopAnimating];
7
nduplessis

Utilisation de Storyboard-

Créer-

  • Allez dans main.storyboard (vous le trouverez dans le navigateur de projets à gauche de votre Xcode) et faites glisser la "Vue d'indicateur d'activité" de la bibliothèque d'objets.

Activity Indicator View from Object Library

  • Accédez au fichier d’en-tête et créez un IBOutlet pour UIActivityIndicatorView-

     @interface ViewController : UIViewController
    
         @property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView;
    
     @end
    
  • Établissez la connexion des prises à UIActivityIndicatorView.

Début:

Utilisez le code suivant lorsque vous devez démarrer l'indicateur d'activité à l'aide du code suivant dans votre fichier d'implémentation (.m) -

 [self.activityIndicatorView startAnimating];

Arrêtez:

Utilisez le code suivant lorsque vous devez arrêter l'indicateur d'activité à l'aide du code suivant dans votre fichier d'implémentation (.m) -

 [self.activityIndicatorView stopAnimating];
2
Natasha

je pense que vous devriez utiliser mieux caché.

activityIndicator.hidden = YES
1
matt

Indicateur d'activité 2 s afficher et passer à la page suivante 

@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];}
0
Bibin Joseph
- (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"];
    }
}
0
P.J.Radadiya