0

私のアプリでは、ユーザーが URL をクリックするたびに、ウェブサイトを表示する uipopover がポップアップします。問題は、ポップオーバーが 320x480 しかないのに、uiwebview が iPad ビューと同じくらい大きいことです。

小さいビューで Web サイトをロードするように 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;

}

ここに画像の説明を入力

4

1 に答える 1

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

ウェブサイトのコンテンツを管理していますか? 次のように、そこにビューポートを設定するメタ タグを追加してみてください。

于 2012-05-28T21:08:50.753 に答える