UITableView 优于 UITableViewCell didSelectMethod

UITableView over UITableViewCell didSelectMethod

这一定是个愚蠢的问题,

有些我怎么知道原因但很难找到解决办法。 所以欢迎任何帮助..

我现在拥有的是 UITableView 和 header。 Header 包含问题,UITableViewCell 包含问题选项。

每个单元格有 3 个控件, 2 个标签和 1 个按钮。

1 个标签包含选项,其他包含答案。 要匹配答案,您必须从下拉菜单中选择 select 选项,单击该单元格中的按钮时会打开该选项。

那个下拉列表又是 UITableView。 哪些选项。 以便在 UITableViewCell 上添加 DropDownTableView。

但问题是,当我打开那个单元格的下拉菜单时,table 超出了单元格的边界, 所以 DropDown table 的 DidSelectMethod 没有被调用。

我无法增加 BaseTableVieCell 的高度,但我想从 DropDownTable 中选择 select 选项。

我该怎么办

我尝试了 bringSubviewToFront,并在单击按钮时禁用了 baseTableView

但没有帮助。

还有其他方法可以完成任务吗

感谢您的帮助。

这张图片会给出详细的想法。

我无法 select 选项 "A"、"B"、"C",因为它们超出了单元格的边界。

提前致谢。

您只需要调整点击按钮的单元格大小如下:

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

    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    CGRect rect = cell.frame;
    rect.size.height = 150.0;
    ht = 150.0; // declared previously. you may check in the attached project
    selected = indexPath.row;
    [cell setFrame:rect];
    [tableView beginUpdates];
    [tableView endUpdates];
}

我刚刚向您介绍了如何调整单元格的大小。这里我取了一个静态高度(150.0)。取而代之的是,您将不得不给出在 UIButton 单击时下降的内部 tableView 的高度。

您可以找到动态更改单元格高度的演示项目here

希望对您有所帮助。