2012-03-19 2 views
4

J'ai une application iPad et dans l'un de mes points de vue, j'utilise UIScrollView et UIPageControl ensemble pour naviguer entre les vues tableau. Lorsque mon simulateur est en mode Portrait, il n'y a pas de problème, mais lorsque je le fais pivoter en mode Paysage, juste en bas de la fenêtre de défilement apparaît et je peux voir à peu près 30 pour 100 de la vue entière. Comment puis-je résoudre cette situation peut-on aider? J'ajoute dynamiquement des sous-vues de boutons sur la sous-vue que j'ai ajoutée à Scrollview, quelqu'un peut-il donner une idée sur la façon de détecter l'orientation de l'appareil et décider des images. Je besoin de quelque chose comme le pseudo ci-dessous:Après un comportement étrange de rotation avec UIScrollView

if(device_orientation == landscape){ 
     subButton.frame=....; 
     textfield.frame=...; 
} 
    else{ 
     subButton.frame=....; 
     textfield.frame=...;} 
    } 

j'ai essayé, mais je suis écran noir ..

EDIT-2 je constructeur d'interface pour certaines vues et il y a quelques views.I créé dynamiquement joué un peu avec les propriétés Autoresizing sur le fichier .xib et maintenant il semble parfait mais les dynamiques (ils sont tous les objets d'une sous-classe de UIButton) ne répondent à aucun code (redimensionnement, photo-couleur ect ..

+0

Comment avez-vous configuré cet écran pour les deux orientations? C'est-à-dire que les éléments sont supposés se repositionner/se redimensionner, ou avez-vous une vision totalement séparée de l'orientation paysage? – Madhu

+0

Je n'ai configuré aucune vue spéciale/séparée. Mon application a quatre contrôleurs de vue, les deux sont UIViewController, l'un est UITableViewController et l'autre est celui-ci, qui contient un UIScrolView. Les autres fonctionnent correctement quand on les fait pivoter mais celui que j'utilise Scrollview (il y a un tableau de vues ici, les éléments UIWebView et UIView) et j'ai peine juste dans cette vue contrôleur – ilhnctn

+0

en passant, pouvez-vous donner un avis ou un tutoriel lien comment redimensionner/ou séparer la création d'une vue lors de la rotation? – ilhnctn

Répondre

1

Utilisez-vous un générateur d'interface ou créez-vous un affichage programmatique allié? Il serait utile que vous puissiez poster un peu plus de votre source ou des captures d'écran afin que nous puissions voir un peu plus clairement ce qui se passe. Comme un coup dans le noir, vous pouvez essayer de définir la propriété 'autoresizingMask' des vues que vous souhaitez redimensionner à '~ UIViewAutoresizingNone' (not-none/flexible). Si vous pouvez fournir plus de détails, je vais essayer de vous aider :)

+0

merci @Simon, j'ai utilisé Interface builder pour certaines vues et il y a quelques vues créées dynamiquement.J'ai joué un peu avec les propriétés Autoresizing sur le fichier .xib et maintenant il semble parfait mais dynamique (ils sont tous les objets d'une sous-classe de UIButton) ne répond pas à tout code (redimensionnement, couleur-photo ect ..) – ilhnctn

Questions connexes