页眉和页脚的uiwebview

时间:2016-04-15 20:32:15

标签: ios objective-c uiwebview key-value-observing

我正在尝试添加页眉和页脚(两者都为"error.htm")但由于某种原因,我的页脚会粘到底部,我使用 <?php if (!empty($_POST['email'])) { $email="website@test.com"; if($email!=$_POST['email']) { $count="1"; } if($count=="2"){ header("Location: /error.htm"); exit(0); } } if($count!="2"){ ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Form</title> </head> <body id="main_body" > <div id="form_container"> <h1><a>Form</a></h1> <form id="form_1123848" class="appnitro" method="post" action=""> <div class="form_description"> <h2>Form</h2> <p> <input type="text" name="email" value="" /></p> </div> <ul > <li class="buttons"> <input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" /> </li> </ul> </form> </body> </html> <? } ?> 方法来查看我的内容大小。

我在这里介绍我认为问题所在的方法:

UIViews

Here's the full project

如何将页脚放在KVO的底部?

1 个答案:

答案 0 :(得分:0)

您可以在UIWebView滚动视图上设置视图,并调整偏移量。

@interface ViewController ()<UIWebViewDelegate>
@property (weak, nonatomic) IBOutlet UIWebView *webView;
@property (nonatomic, strong) UIView *headerView;
@property (nonatomic,strong) UIView *footerView;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    self.headerView = [[UIView alloc] initWithFrame:CGRectMake(0, -100, [UIScreen mainScreen].bounds.size.height, 100)];
    self.headerView.backgroundColor = [UIColor blueColor];
    self.footerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)];
    self.footerView.backgroundColor = [UIColor yellowColor];


    NSString *urlText = @"http://stackoverflow.com/questions/15921974/how-to-load-url-on-launch-in-a-webview-osx-project";
    [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlText]]];
    self.webView.delegate = self;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

#pragma mark - WebView delegate

-(void) webViewDidFinishLoad:(UIWebView *)webView {
    self.webView.scrollView.contentInset = UIEdgeInsetsMake(100.0,0.0,100.0,0.0);


    if(![self.headerView superview])
    {
        [webView.scrollView addSubview:self.headerView];
        [webView.scrollView bringSubviewToFront:self.headerView];
    }

    NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"];

    NSInteger height = [result integerValue];

    self.footerView.frame = CGRectMake(0, height, [UIScreen mainScreen].bounds.size.height, 100);

    if(![self.footerView superview])
    {
        [webView.scrollView addSubview:self.footerView];
        [webView.scrollView bringSubviewToFront:self.footerView];
    }

    [self.webView.scrollView setContentOffset:
     CGPointMake(0, -self.webView.scrollView.contentInset.top) animated:NO];
}


@end

另一种选择是向HTML添加顶部填充(“margin-top:100px”),然后标题视图不会在负偏移中。