Je suis confronté à ce problème étrange pas dans un comportement normal. Je charge les images d'une URL dans la vue Web. Si je change l'orientation du portrait au paysage et du paysage au portrait sans problème. Mais en portrait Si je fais un zoom avant, un zoom arrière et double tap l'image pour s'adapter à l'écran, puis si je change en paysage maintenant, je peux voir qu'il ya un écran blanc/noir qui vient dans le côté droit. J'ai cherché sur ce problème, j'ai essayé de nombreuses façons, comme la propriété opaque, la couleur claire, etc. Même si j'ai essayé de résoudre ce problème, j'ai échoué. Comment résoudre le problème?UIWebView chargement de certains écran noir dans le côté droit de la vue Paysage
Répondre
Je publie cela parce que j'ai également fait face au même problème, j'ai résolu ce problème aussi et mon code est comme ci-dessous.Voici ci-dessous le code entier qui peut résoudre le problème.Need Pour mettre correctement le code ALI dans ViewControler
pour cela, je mis la Gesture Pinch de sorte que lorsque l'utilisateur biaiser le UIwebView
pourrait vérifier la taille de Scaled UIwebView.
//One This Please import The `UIGestureRecognizerDelegate` Protocol in '.h file'
//call below method in ViewDidLoad Method for setting the Pinch gesture
- (void)setPinchgesture
{
UIPinchGestureRecognizer * pinchgesture = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(didPinchWebView:)];
[pinchgesture setDelegate:self];
[htmlWebView addGestureRecognizer:pinchgesture];
[pinchgesture release];
// here htmlWebView is WebView user zoomingIn/Out
}
//Allow The allow simultaneous recognition
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
OUI retour est garanti pour permettre la reconnaissance simultanée. NO retour est pas garanti pour empêcher la reconnaissance simultanée, comme l'autre délégué geste peut retourner OUI
-(void)didPinchWebView:(UIPinchGestureRecognizer*)gestsure
{
//check if the Scaled Fator is same is normal scaling factor the allow set Flag True.
if(gestsure.scale<=1.0)
{
isPinchOut = TRUE;
}
else// otherwise Set false
{
isPinchOut = FALSE;
}
NSLog(@"Hello Pinch %f",gestsure.scale);
}
Si l'utilisateur Hase Pincez In/Out The View Web dans ce cas qui se trouve juste que le facteur Zooming. SO que WebView peut ajuster son ContentSize en tant qu'Oreintaion modifié.
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
//Allow the Execution of below code when user has Skewed the UIWebView and Adjust the Content Size of UiwebView.
if(isPinchOut){
CGFloat ratioAspect = htmlWebView.bounds.size.width/htmlWebView.bounds.size.height;
switch (toInterfaceOrientation) {
case UIInterfaceOrientationPortraitUpsideDown:
case UIInterfaceOrientationPortrait:
// Going to Portrait mode
for (UIScrollView *scroll in [htmlWebView subviews]) { //we get the scrollview
// Make sure it really is a scroll view and reset the zoom scale.
if ([scroll respondsToSelector:@selector(setZoomScale:)]){
scroll.minimumZoomScale = scroll.minimumZoomScale/ratioAspect;
scroll.maximumZoomScale = scroll.maximumZoomScale/ratioAspect;
[scroll setZoomScale:(scroll.zoomScale/ratioAspect) animated:YES];
}
}
break;
default:
// Going to Landscape mode
for (UIScrollView *scroll in [htmlWebView subviews]) { //we get the scrollview
// Make sure it really is a scroll view and reset the zoom scale.
if ([scroll respondsToSelector:@selector(setZoomScale:)]){
scroll.minimumZoomScale = scroll.minimumZoomScale *ratioAspect;
scroll.maximumZoomScale = scroll.maximumZoomScale *ratioAspect;
[scroll setZoomScale:(scroll.zoomScale*ratioAspect) animated:YES];
}
}
break;
}
}
}
Cela fonctionne parfaitement pour même utilisateur biaiser les UIWebView.
Merci Kamarshad. Le code fonctionne bien. Mais vous savez quoi, ce problème d'écran noir se pose à la fois pour Pinch-in et Pinch-out. Donc, je vais rendre cette variable BOOLEAN vraie chaque fois que le geste Pinch est reconnu. Merci beaucoup encore – Cyril
@Cyril Je suis sûr que ce code fonctionne bien, vous avez juste besoin de mettre clairement ce code. Cet écran blanc essentiellement afficher lorsque vous fausser le WebView et le même temps que vous modifiez l'orientation du périphérique. – Kamarshad
- 1. UIWebView montrant écran noir tout verrouiller l'appareil iPad
- 2. écran noir lorsque le contrôleur de vue de pousser
- 3. Comment plein écran DetailView de UISplitViewController dans le paysage
- 4. chargement de l'image UIWebView dans Xcode
- 5. Instanciation manuelle d'une vue ... écran noir
- 6. écran noir dans le simulateur de l'iphone
- 7. UIWebView: ouvre des liens dans Safari, certains dans la vue
- 8. UIWebView pas de chargement
- 9. Écran noir lors du chargement de l'iPad Storyboard.
- 10. ECSlidingViewController 2 paysage avec le menu de côté droit ont le bogue
- 11. Écran noir lors du chargement de l'image Web sur Android
- 12. Écran noir dans MPMoviePlayer
- 13. UIWebView montrant écran blanc après url chargement
- 14. écran noir lors du chargement de nouvelles rss
- 15. Vue arborescente Ouvrir sa division respective dans le côté droit
- 16. Xcode - écran noir UIStoryboard
- 17. Comment 4 icônes dans le côté droit de chaque ligne dans la vue de liste
- 18. Android MediaPlayer affiche un écran noir sur certains appareils
- 19. UIWebview plein écran taille
- 20. Comment forcer l'iPhone en mode paysage plein écran lors de la lecture vidéo via UIWebView?
- 21. Android, désactive la barre de défilement sur le côté droit de la vue de liste
- 22. écran noir dans PREFERENCE intérieure
- 23. Sous-classe de UIViewController affiche écran noir
- 24. Définir le chargement de gif dans UIWebView pendant le chargement
- 25. Formatage paysage UIWebview avec fenêtre
- 26. presentModalViewController donne un écran noir
- 27. HTML 5 vidéo dans UIWebview Orientation paysage
- 28. iPad3 HD écran noir dans l'orientation portrait
- 29. phonegap écran noir ios
- 30. loadView et écran noir
Hey 'Cyril' cela arrive parce que le contenu ne s'ajuste pas correctement. Vous avez donc besoin de réajuster le contenu de UIWebView. Voir ma réponse ci-dessous.Voir ma réponse avec soin dans ma réponse j'ai pris soin de chaque aspect. – Kamarshad
Ya @Kamarshad. Je vérifie votre code seulement. Je vous le ferai savoir – Cyril