2012-07-03 44 views
0

我的目标是创建一个包含2个UILabels的定制UITableViewCell。一个是标题,一个是细节。详细标签应该允许3行文本。定制UITableViewCell与故事板

所以我继续在故事板中创建一个自定义表格视图单元格。我还创建了一个UITableViewCell的子类,并将它们连接在一起。

我向故事板中的单元格添加了两个UILabel,并将它们放置在我想要的位置,并将它们链接到子类中相应的插座。由于标签的内容不同,我想将文本垂直对齐到顶部。据我所知,唯一的方法是通过调用标签上的sizeToFit方法。我在子类的UITableViewCell执行此之下:

-(void)layoutSubviews { 
    [super layoutSubviews]; 
    [self.detailTextLabel sizeToFit]; 
} 

到目前为止,一切似乎都很好,在detailTextLabel文本,因为它应该对齐。尽管当我与单元格交互时,例如将手指滑过它以便出现删除按钮,detailTextLabel将会将大小更改为在故事板中设置的大小。这会导致文本未对齐。类似的事情发生在我选择单元格并更改为另一个视图并通过标签栏返回到表格视图时

我的问题是:是否有任何使用故事板创建此自定义单元格的不同方法,或者是我唯一的替代方法创造一切以编程方式?

方面,基督教

回答

0

也许你应该看看this如果你仍然想垂直对齐文本在你的UILabel没有sizeToFit(谁将会调整它时,你将与你的互动)。

关于您的问题,我认为您可以从像this这样的xib文件创建自定义单元格。

+0

感谢您的回复。你是对的,另一种选择是使用xib文件。不过,我试图坚持故事板。我能够通过使用具有“字幕”风格的标准UITableViewCell解决上述问题。然后我改变了detailTextLabel.numberOfRows等于0.然后在detailTextLabel上调用sizeToFit。所有这些在layoutSubviews下。 –