如何更改UITableViewCellStyleValue2单元格上的标签大小?(UITableView iPhone)

Ben*_*ton 10 iphone uitableview

我在我的应用程序中的UITableView中使用了UITableViewCellStyleValue2单元格,我希望左列(蓝色文本 - self.textField)比默认值窄得多.我已经尝试在创建单元格之后设置self.textField.bounds但这似乎不起作用 - 在调试器中查看它似乎尚未设置边界.

我可以用这种方式编辑默认的单元格类型,还是应该创建自己的UITableViewCell子类?

谢谢.

Fel*_*oux 18

您可以继承UITableViewCell并仍然使用UITableViewCellStyleValue2.然后,您可以覆盖layoutSubviews方法以更改标签的大小:

- (void) layoutSubviews {
   [super layoutSubviews]; // layouts the cell as UITableViewCellStyleValue2 would normally look like

   // change frame of one or more labels
   self.textLabel.frame = CGRectMake(...);
   self.detailTextLabel.frame = CGRectMake(...);    
}
Run Code Online (Sandbox Code Playgroud)

  • ps:你不应该在这里换帧.如果要更改字体(izes),则应在创建/加载单元格时执行此操作. (2认同)