在我的应用中,每次用户点击网址时,都会弹出一个显示网站的uipopover。 问题是popover只有320x480,但uiwebview和iPad视图一样大。
如何让uiwebview以较小的视图加载网站。
感谢。 这是我的代码的一部分:
- (IBAction)openWeb:(id)sender{
ShowWebOnBrowserViewController *swobvc = [self.storyboard instantiateViewControllerWithIdentifier:@"WebView"];
swobvc.title = self.companyName.text;
swobvc.companyWebURL = self.web.titleLabel.text;
swobvc.companyWebView.scalesPageToFit = YES;
swobvc.companyWebView.scrollView.contentSize = CGSizeMake(320,480);
swobvc.companyWebView.scrollView.frame = CGRectMake(0, 0, 320, 480);
swobvc.companyWebView.frame = CGRectMake(0, 0, 320, 480);
popOverController = [[UIPopoverController alloc] initWithContentViewController:swobvc];
popOverController.popoverContentSize = CGSizeMake(320, 480);
[popOverController presentPopoverFromRect:[((UIButton*)sender) bounds] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
//in popover class
-(IBAction)loadURL:(id)sender
{
NSString* webText = self.companyWebURL;
webText = [webText stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding];
NSURL *webURL = [NSURL URLWithString:webText];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:webURL];
[self.companyWebView loadRequest:requestObj];
self.companyWebView.scalesPageToFit = YES;
}
答案 0 :(得分:0)
在openWeb方法中,在显示popOver之前设置companyWebView的框架。另外,请确保scalesPageToFit也设置为YES(NO是默认值)。
//...cut...
popOverController.companyWebView.scalesPageToFit = YES;
popOverController.companyWebView.scrollView.contentSize = CGSizeMake(320,480);
popOverController.companyWebView.frame = CGRectMake(popOverController.companyWebView.frame.origin.x, popOverController.companyWebView.frame.origin.y, 320, 480);
//...cut...
您是否掌控了网站内容?尝试添加元标记以在其中设置视口,例如: