我将 UIwebview 设置为UITableview
. UIWebview
高度和宽度是动态的。它用于本地 html 文件。
UIWebview
并UITableview
在一卷之下。
它适用于 iphone。我为 ipad 编写的相同方法效果很好。但存在一个问题。在 ipad 标题视图和表格视图中对齐不正确。
这是代码。
Rootview控制器是UITableviewControllor
根视图控制器.m
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"Webview in UITableView";
webview = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 10)]; // Don't use CGRectZero here, won't work
webview.delegate = self;
webview.hidden = YES;
[webview loadRequest:[[NSURLRequest alloc]
initWithURL: [NSURL URLWithString:@"http://www.google.com/"]]];
[self.tableView setTableHeaderView:webview]; // Leave this, else you'll have rows to fill the rest of the screen
}
- (void) webViewDidFinishLoad:(UIWebView *)webView {
float newSize = [[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.scrollHeight"] floatValue];
NSLog(@"Resizing webview from %.2f to %.2f", webView.frame.size.height, newSize);
webView.frame = CGRectMake(webView.frame.origin.x, webView.frame.origin.y, webView.frame.size.width, newSize);
webView.hidden = NO;
// We need to reset this, else the new frame is not used.
[self.tableView setTableHeaderView:webview];
}
对于相同的代码 iphone 输出
和 iPad 输出UITableview
开始滑块提前UIWebview.
我尝试设置标题框架,但它不起作用,它让 webview 和 table view 都有它自己的不需要的滚动视图。
什么是解决方案?
谢谢你。