UIWebView在Landscape View的右侧加载一些黑屏

时间:2012-11-09 11:17:12

标签: iphone ios cocoa-touch uiwebview uiwebviewdelegate

我正面临这个奇怪的问题而不是正常的行为。我正在从Web视图中的URL加载图像。如果我将方向从纵向更改为横向,将横向更改为纵向没有问题。但是在肖像中如果我做一些放大,缩小和双击图像以适应屏幕,那么如果我现在改为风景,我可以看到右侧有白/黑屏幕。

我已经搜索了这个问题,我尝试了许多方式,如不透明的属性,清晰的颜色等。即使我尝试自己的方式来解决这个问题,但我失败了。如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

我发布这个是因为我也遇到了同样的问题,我也解决了这个问题,我的代码如下所示。以下是可以解决问题的整个代码。需要正确地将ALl代码放入{{ 1}}

对于此,我设置了捏合手势,以便当用户歪斜时ViewControler可以检查UIwebView的缩放尺寸

UIwebView.

保证返回YES允许同时识别。返回NO不能保证阻止同时识别,因为另一个手势的代表可能会返回YES

     //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;
   }

如果用户激活捏合进出该情况下的Web视图只是设置缩放因子。     因此,随着Oreintaion的改变,WebView可以调整其ContentSize。

 -(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);
  }

这甚至可以完美地解决用户偏斜UIWebView的问题。