2010-06-22 3 views
0

Je crée une application avec une barre d'onglets en bas et aucune barre d'état ou de navigation en haut. Je veux créer une vue teaser en haut de 320x50. Il apparaîtra en haut de la vue principale pour certains des onglets. Similaire à la façon dont une annonce peut apparaître sur une vue. Parfois, la vue d'accroche sera cachée. Lorsqu'un utilisateur clique sur un bouton dans l'accroche, je souhaite qu'il prenne de l'expansion en prenant en compte la vue, y compris la barre d'onglets.Vue extensible de l'iPhone au-dessus d'une autre vue

Existe-t-il des échantillons ou des suggestions?

mieux, Howie

Répondre

0

Eh bien, à moins que je raté quelque chose ce ne me semble pas trop compliqué à.

Vous devez simplement créer une classe pour cette "vue accrochante" qui hérite de UIViewController, en utilisant une plume si nécessaire. Créez les méthodes de rappel pour les boutons d'accroche, développez la taille de l'accroche (en changeant view.frame) ou supprimez-la de sa vue d'ensemble si nécessaire.

Ensuite, lorsque vous souhaitez afficher un accrochage, instancier un, remplir ses données et simplement ajouter son affichage aux sous-vues de votre vue actuelle. TL; DR: Je pense que la vue d'accroche doit être un UIViewController dont la vue est ajoutée aux sous-vues de votre onglet.

+0

merci, j'ai cette partie en cours. C'est la deuxième vue, celle qui occupe tout l'écran après avoir interagi avec le teaser. Pour une raison quelconque, les boutons de cette vue ne peuvent pas interagir avec. J'ai essayé d'envoyer la vue à l'arrière et d'amener les autres à l'avant. rien ne semble fonctionner. – Ward

+0

De quelle façon créez-vous et ajoutez-vous la deuxième vue? Modifiez votre premier message avec le code si nécessaire. – Jukurrpa

0

Je l'ai compris. Probablement quelque chose à voir avec l'instanciation de la vue qui prend en charge l'intégralité de l'écran (je l'ai appelé Main) dans la méthode init au lieu de la méthode load view. De plus, au lieu d'utiliser des contrôleurs de vues et des vues principales distinctes, j'ai créé un contrôleur de vue et utilisé des vues multiples pour contenir la zone de l'accroche et la zone principale. De cette façon, je peux cacher et révéler le teaser qui est de 50 pixels de haut et cacher séparément et révéler la zone principale qui a un y de 50 et une hauteur de 381 (480 - tab taille de 49 - Teaser hauteur de 50).

Maintenant, je peux cliquer sur un bouton dans le teaser, la zone principale s'étendra en prenant tout l'écran (à l'exception de la barre d'onglets). Lorsque je clique sur Fermer, la zone principale se rétrécit derrière la vue d'accrochage en haut de l'écran.

Questions connexes