标签之间的自动间距

时间:2013-02-25 07:02:49

标签: iphone whitespace

如何在标签之间设置自动空间。动态文本提供给标签,第二个标签应自动框架,这样两者都不会被覆盖。我怎样才能做到这一点。我需要在第一个标签文本完成时然后第二个标签开始保持与之前的距离。请指导以上内容。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

试试这个

CGSize size = [firstLabel.text sizeWithFont:[UIFont boldSystemFontOfSize:14.0]];
secondLabel.frame=CGRectMake(size.width+20,4, 9, 14);

有关详情,请参阅Get length of a UIlable according to a string of diffrent length

获取图像尺寸

UIImage *tempimage= [UIImage imageWithContentsOfFile:fullImgNm];
Float width =   tempimage.size.width;

所以你的imageview框架将是

yourImageView.frame=CGRectMake(size.width+20,4,width, 14);

,你的第二个标签框架将是

secondLabel.frame=CGRectMake(size.width+width+20,4, 9, 14);

答案 1 :(得分:0)

使用UILabel符合来调整constrainedToSize框架。

CGRect infoRect = self.conditionLabel.frame;
NSString *fileName = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"txt"]; 

NSString *textString = [[NSString alloc] initWithContentsOfFile:fileName encoding:NSUTF8StringEncoding error:nil];
[self.conditionLabel setText:textString];
[textString release];

CGSize defaultSize = CGSizeMake(sectionWidth, 9999.0);
UIFont *defaultFont = kCCOpenSansFont(font, 14.0);

CGSize infoSize = [[self.conditionLabel text] sizeWithFont:defaultFont constrainedToSize:defaultSize lineBreakMode:UILineBreakModeWordWrap];

infoRect.size.height = infoSize.height;
[self.conditionLabel setFrame:infoRect];