如何将UINavigationBar添加到UIWebView,以使Web内容绘制区域缩放到导航栏下方的区域?

时间:2011-07-22 17:53:44

标签: uiview ios4 uiwebview uinavigationbar

情况如下:

myViewController有一个名为“帮助”的按钮。按“帮助”激活以下IBAction方法,该方法加载显示PDF的UIWebView。它还将一个子视图加载到该UIWebView中,该UI是一个名为“helpNavBar”的UINavigationBar,带有“Done”按钮。我以编程方式加载helpNavBar的原因是因为如果我不这样做,那么helpNavBar会被PDF显示覆盖(尽管你可以看到它,如果你将PDF向下滚动到足以发现它......!) 。但是,问题是这样的:即使在以编程方式加载helpNavBar之后, PDF仍会缩放到全屏区域(除非现在它下面的helpNavBar而不是在它之上)。

以下是我的IBAction方法代码:

 (IBAction)helpButtonPress:(id)sender {
    UIView *current_view;
    current_view = self.view;
    [UIView beginAnimations:@"switch" context:nil];
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];
    //[current_view removeFromSuperview];

    //STILL CAN'T GET THE HELP PDF TO SHOW PROPERLY (IT IS PARTIALLY UNDER THE BUTTON)
    self.helpView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
    self.helpView.autoresizesSubviews = TRUE;
    [self.helpView addSubview:helpNavBar];
    [helpNavBar setAutoresizingMask:UIViewAutoresizingFlexibleWidth];

    [self.view addSubview:helpView];
    [UIView commitAnimations];
    NSString *thePath = [[NSBundle mainBundle] pathForResource:@"Angle of View Manual" ofType:@"pdf"];
    if (thePath) {
        NSData *pdfData = [NSData dataWithContentsOfFile:thePath];
        [self.helpView loadData:pdfData MIMEType:@"application/pdf"
                        textEncodingName:@"utf-8" baseURL:nil];
    }
}

我应该注意:当我的UITableViewController加载时,我也有同样的问题。但是在这种情况下,我创建了一个带有两个子视图的UIView:一个用于tableView,另一个用于navBar。这样,tableView没有覆盖navBar。 我知道在这种情况下我也可以做到这一点,但我觉得这是一种愚蠢的做法,并且必须有一种更简单/更好的方法来做一些简单的事情,如界面和PDF视图区域不能全部绘制在一个感觉标记会议中,就像两岁的孩子一样。但是如果唯一的方法是在主UIView的单独子视图中“保持'分开”,那么就告诉我“付钱”不介意“......我不会接受任何”不尊重。“

PS - 我正避免在这个基础上使用单独的UIViewController。视图只需要弹出并显示一个简短的PDF并有一个“完成”按钮,就是这样。如果有一个更简单的方法来做到这一点,那么请管道:D

0 个答案:

没有答案