调整 UITableViewCell 高度和缩进?

问题描述 投票:0回答:2

两个UITableViewCell相关问题:

  1. 在我的自定义 UITableViewCell 中,我循环遍历一个数组(我不知道其中包含多少个对象)并添加一个 UILabel,为该数组中的每个对象显示一些文本。

这意味着我必须调整单元格的高度,以便这些标签适合。我该怎么做?

  1. 进入编辑模式时,我的单元格缩进,但我不希望这样。我尝试过以下方法:

cell.shouldIndentWhileEditing = NO;

-(BOOL)tableView:(UITableView *)tableView shouldIndentWhileEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    return NO;
}

两者都不幸失败了,我不知道为什么。我该如何解决这个问题?

iphone objective-c uitableview
2个回答
0
投票
  1. 您可以使用委托方法

    [UITableViewDelegate tableView:heightForRowAtIndexPath:]
    指定每行的高度。 只需更改方法返回的内容并重新加载表即可。

  2. 这个方法其实和单元格内容的缩进无关:

    询问委托在表格视图处于编辑模式时是否应缩进指定行的背景

你可以尝试设置

indentationWidth
,但我从来没有成功过。 幸运的是,通过
[UITableView layoutSubviews]
方法可以轻松更改您想要的所有内容。 例子:

- (void)layoutSubviews {
    [super layoutSubviews];
    self.contentView.frame = self.bounds;
}


0
投票

您可能还需要设置

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    return UITableViewCellEditingStyleNone;
}

对于动态高度部分,还有很多其他答案,快速谷歌找到了一个教程这里

© www.soinside.com 2019 - 2024. All rights reserved.