2010-09-17 5 views
5

Je crée une application de magazine. J'affiche chaque page de mon magazine dans un UIWebView. Le webview ne remplit pas l'écran avec le PDF. Il y a une frontière autour d'elle. Comment puis-je l'afficher en plein écran?PDF dans UIWebView

Répondre

4

Je ne l'ai pas essayé avec un UIWebView, mais vous pouvez être en mesure de faire quelque chose comme cela à la position programatically la frontière afin qu'il soit offscreen:

CGRect frame = webView.frame; 
// you may need to modify the 5 and 10 below to match the size of the PDF border 
frame.origin.x = frame.origin.x - 5; 
frame.origin.y = frame.origin.y - 5; 
frame.size.width = frame.size.width + 10; 
frame.size.height = frame.size.height + 10; 
webView.frame = frame; 

Si vous utilisez le UIWebView pour afficher les fichiers PDF et HTML, vous ne modifiez bien sûr le cadre que lors de l'affichage d'un PDF, puis redéfinissez le cadre sur les valeurs d'origine lors de l'affichage d'un autre contenu. J'ai fait ce genre de chose avec un UIScrollView pour une raison différente: fournir un rembourrage autour des éléments affichés dans UIScrollView afin qu'il y ait un manque de défilement (comme démontré dans l'exemple de PhotoScroller d'Apple de WWDC 2010). Je suppose que cela pourrait également travailler pour déplacer les frontières autour du PDF hors de l'écran.

+0

Grande solution de contournement! Merci beaucoup pour cela! – John

+0

Moi aussi j'ai essayé la même chose. Pourquoi n'est-il pas possible d'utiliser la propriété pageEnabled, réglez-la sur YES et augmentez les limites de la scrollview en disant ces 5 px offset. La documentation dit que "la vue de défilement s'arrête sur des multiples des limites de la vue de défilement quand l'utilisateur fait défiler" Donc, cela aurait dû fonctionner dans cette approche, mais pour une raison quelconque je ne peux pas le faire fonctionner comme prévu. Des indices auxquels vous pouvez penser? –

4

Vérification de la zone La page Ajuster à dans IB a supprimé la bordure pour moi.