我试图将三个UILabel
放在 iOS6 中表格的一个单元格中。第一个是数字,位于左侧,第二个是标题,位于第一个旁边,第三个是位于单元格右侧的日期。日期和标题会根据文本的长度正确调整自己的大小,但是当标题很长时,它应该在日期之前被截断,相反它也会出现在日期之上。
如何在日期之前截断标题?我也尝试设置它的框架宽度并使用sizeToFit
,但没有效果。
我试图将三个UILabel
放在 iOS6 中表格的一个单元格中。第一个是数字,位于左侧,第二个是标题,位于第一个旁边,第三个是位于单元格右侧的日期。日期和标题会根据文本的长度正确调整自己的大小,但是当标题很长时,它应该在日期之前被截断,相反它也会出现在日期之上。
如何在日期之前截断标题?我也尝试设置它的框架宽度并使用sizeToFit
,但没有效果。
试试这个:
myLabel.adjustsFontSizeToFitWidth = YES;
编辑:
cell.YOURLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin;
选项 2
[YOURLabel sizeToFit];
只需使用此条件扩展您的 TitleLabel:
titleLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 10, 20)];
dateLabel=[[UILabel alloc]initWithFrame:CGRectMake(160,0, 160, 20)];
[self.view addSubview:titleLabel];
[self.view addSubview:dateLabel];
titleLabel.text=@"sjlkfdsfjdfkdlfjlkdsjflkdfjkldsfkdjfkljdslkjflkdslkf";
dateLabel.text=@"fmldf";
[titleLabel sizeToFit];
if(titleLabel.frame.origin.x+titleLabel.frame.size.width>dateLabel.frame.origin.x)
{
titleLabel.frame=CGRectMake(titleLabel.frame.origin.x, titleLabel.frame.origin.y,
dateLabel.frame.origin.x-titleLabel.frame.origin.x-5, 20);
}
else
{
[titleLabel sizeToFit];
}
只需在 Interface Builder 中将标题标签设置为允许的最大宽度,并将 Line Breaks 选项设置为所需的截断模式。或者您是否希望最大允许宽度根据日期标签的宽度而变化?