我在viewController中创建下一个方法
-(void)setupDocsLabel:(NSMutableArray *)documents{
self.lDocumentos.frame = CGRectMake(self.lDocumentos.frame.origin.x, kFirstLabelYPosition+actualLabelYPos,self.lDocumentos.frame.size.width,lDocumentos.frame.size.height);
self.Documentos.frame = CGRectMake(self.Documentos.frame.origin.x, kFirstLabelYPosition+actualLabelYPos,self.Documentos.frame.size.width,self.Documentos.frame.size.height);
actualLabelYPos +=20.0;
for (DocInformation *doc in documents) {
NSString *textLabel = [doc.documentDescription stringByAppendingString:@" :"];
UIFont *lblFont = lDocumentos.font;
CGSize sizeFont = [textLabel sizeWithFont:lblFont forWidth:120.0 lineBreakMode:NSLineBreakByTruncatingTail];
UILabel *label = [[[UILabel alloc] initWithFrame:CGRectMake(lDocumentos.frame.origin.x+20, kFirstLabelYPosition+actualLabelYPos,sizeFont.width,sizeFont.height)] retain];
label.text = textLabel;
[label setFont:lblFont];
[label setTextColor:lDocumentos.textColor];
[label setBackgroundColor:[UIColor clearColor]];
//[label setLineBreakMode:NSLineBreakByTruncatingTail];
NSString *textDoc = doc.cdgoDocum;
UIFont *lblFontDoc = Documentos.font;
CGSize sizeFontDoc = [textDoc sizeWithFont:lblFontDoc];
UILabel *labelDoc = [[[UILabel alloc] initWithFrame:CGRectMake(label.frame.origin.x+label.frame.size.width+20, kFirstLabelYPosition+actualLabelYPos,sizeFontDoc.width,lDocumentos.frame.size.height)] retain];
labelDoc.text = textDoc;
[labelDoc setFont:lblFontDoc];
[labelDoc setTextColor:lDocumentos.textColor];
[labelDoc setBackgroundColor:[UIColor clearColor]];
[self.scrollView addSubview:label];
[self.scrollView addSubview:labelDoc];
[label release];
[labelDoc release];
actualLabelYPos+=20.0;
}
//[self.view setNeedsDisplay];
//[self.view setNeedsLayout];
}
新标签很好地添加到scrollView,但是self.lDocumentos(.xib的IBOutlet)不会改变他的位置。
感谢您的帮助!!
答案 0 :(得分:8)
我已经解决了,问题是.xib在文件检查器中启用了使用AutoLayout 。