Iphone autoresizingMask仅通过设置更改正在绘制的UILabel的大小
我有一些自定义UITableViewCells,它们是根据需要以编程方式创建的,我希望它们能够调整大小。然而,当我将AutoResizingMask添加到单元格中的UILabel时,它们似乎都延伸得更宽,同时锚定到左侧Iphone autoresizingMask仅通过设置更改正在绘制的UILabel的大小,iphone,uiview,uitableview,uilabel,autoresize,Iphone,Uiview,Uitableview,Uilabel,Autoresize,我有一些自定义UITableViewCells,它们是根据需要以编程方式创建的,我希望它们能够调整大小。然而,当我将AutoResizingMask添加到单元格中的UILabel时,它们似乎都延伸得更宽,同时锚定到左侧 // This works fine UILabel *aField = [[UILabel alloc] initWithFrame:CGRectMake(60, 2, tableView.frame.size.width - 83, 21)]; UILabel *bField
// This works fine
UILabel *aField = [[UILabel alloc] initWithFrame:CGRectMake(60, 2, tableView.frame.size.width - 83, 21)];
UILabel *bField = [[UILabel alloc] initWithFrame:CGRectMake(60, 20, tableView.frame.size.width - 154, 21)];
UILabel *cField = [[UILabel alloc] initWithFrame:CGRectMake(0, 2, tableView.frame.size.width, 21)];
UILabel *dField = [[UILabel alloc] initWithFrame:CGRectMake(tableView.frame.size.width - 116, 11, 93, 21)];
UILabel *eField = [[UILabel alloc] initWithFrame:CGRectMake(tableView.frame.size.width - 116, 11, 93, 21)];
// But when I add this, it draws like the tableview is actually much wider than it really is
aField.autoresizingMask = UIViewAutoresizingFlexibleWidth;
bField.autoresizingMask = aField.autoresizingMask;
cField.autoresizingMask = UIViewAutoresizingFlexibleWidth;
dField.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;
eField.autoresizingMask = dField.autoresizingMask;
因此,当代码的底部部分不存在时,一切都按预期工作,但当它存在时,许多标签开始从右侧脱落或被拉伸到其中心远离右侧的位置。我忽略了一些简单的东西吗?您应该设置更多的AutoResizingFlexibleHeight | topmargin | bottommargin等AutoResizingSks属性。您应该设置更多的AutoResizingFlexibleHeight | topmargin | bottommargin等AutoResizingSks属性。