Iphone uitableview动态高度调整正确存在问题
我正在处理一个项目,该项目有一个uitableview,在1个部分中有3行。现在,我想做的是让这3个细胞中的1个在高度上是动态的。首先,我甚至不知道这是否可能。如果是的话,那么我想做!我发现了一个非常有用的教程,可以帮助我完成它。我实现了他推荐的StringHelper文件,它们对一个单元格非常有效,但是当有多个单元格时,我开始出现问题。此图说明了保存文本时发生的情况: 正如你所看到的,无论出于何种原因,在开头随机插入一个漂亮的阿拉伯小符号 下面是我正在使用的代码:Iphone uitableview动态高度调整正确存在问题,iphone,uitableview,Iphone,Uitableview,我正在处理一个项目,该项目有一个uitableview,在1个部分中有3行。现在,我想做的是让这3个细胞中的1个在高度上是动态的。首先,我甚至不知道这是否可能。如果是的话,那么我想做!我发现了一个非常有用的教程,可以帮助我完成它。我实现了他推荐的StringHelper文件,它们对一个单元格非常有效,但是当有多个单元格时,我开始出现问题。此图说明了保存文本时发生的情况: 正如你所看到的,无论出于何种原因,在开头随机插入一个漂亮的阿拉伯小符号 下面是我正在使用的代码: - (CGFloat)tab
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
NSString *label = [entree.notes/*putting entree.notes here may or may not be correct*/ length] == 0 ? kDefaultNoteLabel : aNote;
CGFloat height = [label RAD_textHeightForSystemFontOfSize:kTextViewFontSize] + 40.0;
return height;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue2 reuseIdentifier:CellIdentifier] autorelease];
cell.editingAccessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
aNote = entree.notes;
NSString *label = [aNote length] == 0 ? kDefaultNoteLabel : aNote;
switch (indexPath.row) {
case 0:
cell.textLabel.text = @"Name";
cell.detailTextLabel.text = entree.title;
break;
case 1:
cell.textLabel.text = @"Date";
cell.detailTextLabel.text = [self.dateFormatter stringFromDate:entree.date];
break;
case 2:
//aNote = entree.notes;
if ([[cell.contentView subviews] count] > 0) {
id view = [[cell.contentView subviews] objectAtIndex:0];
UILabel *labelToSize = view;
[label RAD_resizeLabel:labelToSize WithSystemFontOfSize:kTextViewFontSize];
} else {
UILabel *cellLabel;
cellLabel = [label RAD_newSizedCellLabelWithSystemFontOfSize:kTextViewFontSize];
[cell.contentView addSubview:cellLabel];
[cellLabel release];
}
cell.textLabel.text = @"Notes";
cell.detailTextLabel.text = entree.notes;// description];
break;
}
return cell;
}
其中entre是我的NSManaged对象的名称,title、date和notes是属性。我所需要的是能够将单元格3或notes属性设置为动态高度,以便当它们输入大量文本时,该单元格和只有该单元格移动,其他所有内容保持不变。正如你所看到的,我一直在尝试一些事情,我很抱歉,如果它变得有点混乱,但是当前的代码设置,产生了上面的图像,这是接近的,但不完全存在。这可能只是一个快速修复,所以如果有人可以帮助我,这将是非常感谢!提前感谢我也写了一篇关于这一点的博客文章,为多个单元格提供了代码。你可以继续读下去 答案中的代码无法读取,因为您没有正确格式化。如果你解决了这个问题,你可能会得到更多/更好的反馈
致以最诚挚的问候。这个问题更有趣,因为有文件证明细胞的高度是有限的。请参阅UITableViewDelegate文档。