2016-05-17 19 views

答えて

0

- (UITableViewCell *)tableView:(UITableView *)tableView 
     cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    static NSString *CellIdentifier = @"ProductsViewCell"; 
    UITableViewCell *cell = 
     [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) 
    cell = 
     [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 
     reuseIdentifier:CellIdentifier]; 
    cell.selectionStyle = UITableViewCellSelectionStyleNone; 

    UIWebView* webView = [[UISynchedWebView alloc] initWithFrame: 
          CGRectMake(0,0, 320, 44)]; 
    webView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth; 
    webView.tag = 1001; 
    webView.userInteractionEnabled = NO; 
    webView.opaque = NO; 
    webView.backgroundColor = [UIColor clearColor]; 

    [cell addSubview:webView]; 
    } 

    UIWebView* webView = (UIWebView*)[cell viewWithTag:1001]; 
    if (isHTML) { 
    UIFont *font = [UIFont fontWithName:@"Arial" size:15.0f]; 
    NSString *html = 
    [NSString stringWithFormat: 
    @"<html>\n" 
    "<head>\n" 
    "</head>\n" 
    "<body><div style=\"padding:5px 0px; text-align:center\"><b>test</b></div></body>\n" 
    "</html>"]; 

    [webView loadHTMLString:html 
        baseURL:nil]; 
    webView.hidden = NO; 
} else { 
    cell.textLabel.text = @"Not HTML"; 
    webView.hidden = YES; 
} 

    return cell; 
} 

あなたが動的以下webViewメソッドを使用し、高さを変更した場合は、

- (void) webViewDidFinishLoad:(UIWebView *)awebView { 

    CGRect frame = awebView.frame; 
    frame.size.height = 1; 
    awebView.frame = frame; 
    CGSize fittingSize = [awebView sizeThatFits:CGSizeZero]; 
    frame.size = fittingSize; 
    awebView.frame = frame; 

    self.cellSize = fittingSize.height; 

    [self.tableView beginUpdates]; 
    [self.tableView endUpdates]; 

    NSLog(@"Calling webViewDidFinishLoad. Cell size value: %lf", self.cellSize); 

} 

は、セルの高さを得ることはありませんため、その有用

+0

ラヴィ – jaydev

+0

その作業@lyyappanおかげか –

+0

は、正確に、しかし、私はこのから解決策を見つけて、ユーザーとの対話でのTextViewを追加し、[OK]をあなたが@jaydevありがとう応答 – jaydev

0

コードを願っていますウェブビューの場合は、セルの高さを計算します。

CGSize constraint1 = CGSizeMake(300.0f、CGFLOAT_MAX);

CGRect textRect = [strmessage boundingRectWithSize:制約1のオプション:(NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading)が属性:@コンテキスト{[UIFont fontWithName:NSFontAttributeName 12.0]: "ゴシック" サイズ@}:なし]。

CGFloat msgHight = MAX(textRect.size.height,40.0f); 
return msgHight 
関連する問題