2012-05-28 4 views
0

В моем приложении каждый раз, когда пользователь нажимает на URL-адрес, появится uipopover, отображающий веб-сайт. Проблема в том, что popover - всего 320x480, но uiwebview такой же большой, как iPad.загрузить uiwebview в uipopover

Как я могу сделать 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; 

} 

enter image description here

ответ

0

В методе openWeb установите рамку companyWebView до представления поповера. Кроме того, убедитесь, что для scalesPageToFit также установлено значение YES (НЕТ по умолчанию).

//...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... 

У вас есть контроль над содержимым сайта? Попробуйте добавить метатег, чтобы установить там видовое окно:

+0

Спасибо за ответ, но это не сработало! –

+0

Не могли бы вы опубликовать скриншот того, как он выглядит в симуляторе? –

+0

Кроме того, установите contentSize в свойстве scrollView webview, как я добавил в ответ. –

Смежные вопросы