【发布时间】:2013-04-18 14:03:28
【问题描述】:
我的标签超出了应用框架:
只有在滚动时我才能看到其余部分:
[_scroller setScrollEnabled:YES];
[_scroller setContentSize:CGSizeMake(320, 600)];
self.description = [_description stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
[self positionLabel:self.lblTitle withText:self.stitle withY:10];
[self positionLabel:self.lblPubDate withText:self.pubDate withY:CGRectGetMaxY(self.lblTitle.frame)+10 ];
[self positionLabel:self.lblDescription withText:self.description withY:CGRectGetMaxY(self.lblPubDate.frame)+10 ];
}
-(void)positionLabel:(UILabel*)lbl withText:(NSString*)text withY:(CGFloat)Y
{
lbl.textAlignment = UITextAlignmentRight;
lbl.text = text;
lbl.numberOfLines = 0;
lbl.lineBreakMode = NSLineBreakByWordWrapping;
CGSize size = [self calculateSize:lbl];
//FIXED
[lbl setFrame:CGRectMake(10 , Y , (size.width>300)?size.width:300 , size.height)];
[_scroller addSubview:lbl];
}
-(CGSize)calculateSize:(UILabel*)lbl
{
CGSize size = [lbl.text sizeWithFont:lbl.font
constrainedToSize:CGSizeMake(280, MAXFLOAT)
lineBreakMode:UILineBreakModeWordWrap];
return size;
}
什么会导致这个问题? xib中的标签可能是相关的?
【问题讨论】:
-
你的滚动视图的 y 坐标是多少?
-
在哪里可以看到?
-
你可以在你的XIB中看到。
-
在尺寸检查器中 --> 查看我可以看到 Y = 0
-
只需要设置滚动视图的y坐标为64即可。
标签: iphone ios xcode uiscrollview uilabel