2012-03-29 85 views
0

两个UITableViewCell的相关问题:调整UITableViewCell高度和缩进?

  1. 在通过阵列(其中我不知道有多少对象持有)我的自定义的UITableViewCell我环路,并添加一个UILabel显示该阵列中的每个对象一些文字。

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

  1. 当进入编辑模式,我有单元格缩进,但我不想这样。我曾尝试以下:

cell.shouldIndentWhileEditing = NO;

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

两个可悲的是失败了,我有我不知道为什么。我怎么可能解决这个问题?

任何帮助都非常感谢这些问题,谢谢。

+0

不确定编辑,但:在tableViewDelegate中,使用tableView:heightForRowAtIndexPath:方法为不同的行设置高度。 – 2012-03-29 20:40:37

回答

0
  1. 您可以指定每个高度用代表方法[UITableViewDelegate tableView:heightForRowAtIndexPath:]排。 只需更改该方法返回的内容并重新载入您的表。

  2. 这种方法实际上已经无关单元格内容的indendation:

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

你可以尝试设置indentationWidth但我从来没有设法使其工作。 幸运的是,很容易在[UITableView layoutSubviews]方法中更改所需的一切。 例如:

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

+0

高度做到了!仍然有缩进问题,并认为这将是不公平的在同一个问题。缩进问题:http://stackoverflow.com/questions/9934139/remove-uitableviewcell-edit-mode-indentation – 2012-03-29 21:55:20

0

您可能还需要设置

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

对于动态高度的部分也有很多其他的答案和快速谷歌发现了一个教程here

+0

我已经试过这个,可惜它只是删除了删除按钮。我希望能够删除单元格,但是我不希望它们在进入编辑模式时缩进。 – 2012-03-29 20:58:31