0

我有 UIWebView。我想在 UITableView 下打开它。我有自定义单元格,带有按钮,甚至可以扩展单元格的单击(didselectrow)。

如何将 UIWebView 放在 Cell 下并在单击单元格时展开它。

我还想在单击另一个单元格时关闭它,因为它将打开其各自的 web 视图。

谢谢

4

2 回答 2

0

这是您如何实现这一目标的概述。该代码未经测试,但应该是不言自明的。如果您对此有任何疑问,请告诉我。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    _selectedCellIndexPath = indexPath;

    // redraw the visible cells, which will now expand the selected cell
    [_tableView reloadData];
}


- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{ 
    if([indexPath compare: _selectedCellIndexPath] == NSOrderedSame) {
        return EXPANDED_CELL_HEIGHT;
    } 
    else {
        return NORMAL_CELL_HEIGHT;
    }
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
     MyCell *cell = …. // get the cell
    if([indexPath compare: _selectedCellIndexPath] == NSOrderedSame) {
        return cell.webView.hidden = NO;
        // update the web view if necessary
    } 
    else {
        return cell.webView.hidden = YES;
    }


    return cell;
}
于 2013-11-13T18:47:22.077 回答
0

这应该对您有所帮助,您需要将 Web 视图添加到您的自定义单元格并更新行高:

https://developer.apple.com/library/ios/samplecode/TableViewUpdates/Introduction/Intro.html

于 2013-11-13T18:48:18.917 回答