1

ipad xib で webview を使用していますが、両方の向きで正常に動作しています w. しかし、ポートレートモードでズームインしてから、ランドスケープWebビューで回転すると、右側からマージンがかかります

- (void)viewDidLoad
{
    NSString *urlString=@"http://www.plus.al";
    NSURLRequest *request=[NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
    webView.scalesPageToFit = YES;
    [webView loadRequest:request];
}

- (BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation 
 {
   if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    {
        if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
        {

            webView.frame=CGRectMake(0, 0, 1024, 748);

        }
        if (UIInterfaceOrientationIsPortrait(interfaceOrientation)) 
        {

            webView.frame=CGRectMake(0, 0, 768, 1004);

        }
    else {
        if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
        { 
            webView.frame=CGRectMake(0, 0, 480, 300);    
        }
        if (UIInterfaceOrientationIsPortrait(interfaceOrientation)) 
        {

            webView.frame=CGRectMake(0, 0, 320, 460);
        }
    }
    return YES;
 }

助けてください。よろしくお願いします。

4

1 に答える 1

0

代わりに次のコードを使用する必要があります-

- (BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation 
{
    return YES;
}


- (void) willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration {
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    {
        if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
        {
            self.webView.frame=CGRectMake(0, 0, 1024, 748); 
        }
        if (UIInterfaceOrientationIsPortrait(interfaceOrientation)) 
        {
            self.webView.frame=CGRectMake(0, 0, 768, 1004);
        }
        else {
            if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
            { 
                self.webView.frame=CGRectMake(0, 0, 480, 300);    
            }
            if (UIInterfaceOrientationIsPortrait(interfaceOrientation)) 
            {                
                self.webView.frame=CGRectMake(0, 0, 320, 460);
            }
        }
    }
}
于 2012-05-11T06:54:28.727 に答える