Sur l'iPad, je présente une vue dans le côté «détail» d'un contrôleur de vue partagée qui est essentiellement un UIWebView
, qui charge un fichier HTML dans l'ensemble d'applications. L'application prend en charge la rotation et cache/affiche le côté «maître» de la division selon le cas. Lorsque le UIWebView
est initialement chargé en mode paysage, son contenu semble être "dimensionné" correctement ... le contenu est plus grand que l'écran, vous pouvez donc faire défiler verticalement, mais pas horizontalement. (Le contenu HTML est presque tout texte avec CSS, avec seulement une petite image ~ 300x50 en bas.)Rotation UIWebView sur iPad
Si vous faites ensuite pivoter l'écran en mode portrait, le contenu HTML semble toujours être de taille OK - barre de défilement verticale est présent, mais pas horizontal, comme il était initialement. Retournant au paysage et tout est encore pêché.
Jusqu'ici, tout va bien.
Maintenant, si le UIWebView
se charge initialement en orientation portrait, tout est également "dimensionné" correctement (barre de défilement verticale, pas d'horizontale). Mais, si vous le faites pivoter en mode paysage, le contenu reçoit soudainement une barre de défilement horizontale, car l'un des paragraphes du texte est plus large que la largeur de l'UIWebView. (Pas par hasard, je suis sûr, mais ce long paragraphe est de taille parfaitement pour la largeur légèrement plus la UIWebView
a quand il est orienté comme portrait.)
Je me attendais/en supposant que la rotation de l'iPad causerait la UIWebView
à avoir son cadre être redimensionné, et quand il est redimensionné, de redimensionner également son contenu HTML de manière appropriée. (Pensez à prendre une fenêtre de navigateur Web et à la réduire.) Pourquoi cela ne se passe-t-il pas pour moi?
Je voudrais éviter d'utiliser la propriété "Scales Pages to Fit" car le texte se contracte de façon non déterministe.
suis tombé sur cette même question exactement l'autre jour, il ne se produit que lorsque l'application est lancée initialement dans l'orientation paysage, puis tourné en mode portrait, s'il est lancé en mode portrait, il redimensionne correctement lorsqu'il est tourné en mode paysage. Dans mon cas, c'est un show-stopper parce que mon contenu est une carte (CloudMade) sans barre de défilement montrée et une bonne partie de la carte finit hors de l'écran et le centre de la carte quand il est tourné vers un nouveau Lat/Lng est évidemment décentré. J'espère qu'il y a une solution de contournement! – EagleOfToledo
@EagleOfToledo Votre contenu est-il également un "UIWebView"? –
Oui, mais dans mon cas, l'UIWebView occupe tout l'écran (pas de SplitView/DetailView). – EagleOfToledo