【发布时间】:2016-05-19 12:40:51
【问题描述】:
我正在创建一个基于表格的应用程序,其中需要为每个表格单元格显示一个 UIWebView。我尝试为表格中的每个单元格保留一个高度为 NSMutableArray,但它不起作用。
这是我的代码:
- (void)webViewDidFinishLoad:(UIWebView *)aWebView
{
aWebView.scrollView.scrollEnabled = NO;
CGRect frame = aWebView.frame;
frame.size.height = 1;
aWebView.frame = frame;
CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero];
frame.size = fittingSize;
aWebView.frame = frame;
if (arrayRowHeights.count == 0 || arrayRowHeights == nil) {
arrayRowHeights = [[NSMutableArray alloc] init];
[arrayRowHeights addObject:[NSString stringWithFormat:@"%f", fittingSize.height]];
}
else{
[arrayRowHeights addObject:[NSString stringWithFormat:@"%f", fittingSize.height]];
if (arrayRowHeights.count == aWebView.tag) {
[tblEventInfo reloadData];
}
}
}
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return [arrayEventInfo count];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 1;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return [[arrayRowHeights objectAtIndex:indexPath.section] floatValue];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil)
{
EventInfoDetail *event = [[EventInfoDetail alloc] init];
event = [arrayEventInfo objectAtIndex:indexPath.section];
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
webViewHTML = [[UIWebView alloc]init];
webViewHTML.delegate = self;
webViewHTML.tag = arrayEventInfo.count;
webViewHTML.backgroundColor = [UIColor clearColor];
webViewHTML.opaque = NO;
webViewHTML.userInteractionEnabled = NO;
if (event.d_description == (NSString *)[NSNull null]){
[webViewHTML loadHTMLString:@"" baseURL: nil];
}
else{
[webViewHTML loadHTMLString:event.d_description baseURL: nil];
}
webViewHTML.frame = CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height);
[cell.contentView addSubview:webViewHTML];
}
return cell;
}
我的问题是我无法正确设置单元格的高度,任何人都可以找出我在这个给定代码上的错误在哪里。谢谢!
【问题讨论】:
标签: ios objective-c uitableview ios7 uiwebview