Comment afficher un indicateur de progression de superposition/HUD sur l'iPhone?

Je veux afficher un indicateur de progression dans une semi-transparent de la boîte qui flotte au-dessus d'une table. En d'autres termes, lorsque le contenu de la table sont en cours de téléchargement, j'ai envie d'une "mise à Jour" de l'étiquette à apparaître sur elle.

J'ai vu cela dans plusieurs applications dans le magasin, notamment Facebook (lorsque vous secouez pour recharger) et Darkslide.

Mon premier réflexe est de créer une semi-transparent UIView, placez un UILabel et un UIProgressIndicatorView à l'intérieur, et l'ajouter à la vue de la hiérarchie... mais où? Une UIView ne peuvent pas se chevaucher ses frères et sœurs, je ne peux donc pas en faire une sous-vue de la fenêtre. je ne peux pas en faire une sous-vue de la table, car alors il sera défiler vers le haut et vers le bas avec le contenu de la table.

J'ai pensé à la création d'une nouvelle UIWindow, mais la documentation indique fondamentalement ne pas.

Je sais CALayers peuvent se chevaucher les uns les autres, alors que ce serait une option, mais je ne peux pas mettre un indicateur de progression à l'intérieur d'un CALayer, puis-je? Dois-je roule mes propres indicateur de progrès qui anime un CALayer au lieu d'une UIView?

Je ne suis pas intéressé à entendre parler de Api privées.

Edit: La question est basée sur une mauvaise hypothèse. NSViews (sur Mac OS X) ne peuvent pas se chevaucher, mais UIViews sur l'iPhone peut.

  • Vous pouvez vous épargner un peu de travail à l'aide de la MBProgressHUD si elle répond à vos besoins.
InformationsquelleAutor benzado | 2009-02-27