一个UILabel,如果内容很短的话就会垂直居中,但是我希望他顶端对齐,改怎么做?
UILabel *label = [[UILabel alloc] initWithFrame:self.view.bounds]; label.text = @"各种居中"; label.textAlignment = UITextAlignmentCenter; [self.view addSubview:label];
一个UILabel,如果内容很短的话就会垂直居中,但是我希望他顶端对齐,改怎么做?
UILabel *label = [[UILabel alloc] initWithFrame:self.view.bounds]; label.text = @"各种居中"; label.textAlignment = UITextAlignmentCenter; [self.view addSubview:label];
@implementation UILabel (VerticalUpAlignment)
- (void)verticalUpAlignmentWithText:(NSString *)text maxHeight:(CGFloat)maxHeight
{
CGRect frame = self.frame;
CGSize size = [text sizeWithFont:self.font constrainedToSize:CGSizeMake(frame.size.width, maxHeight)];
frame.size = CGSizeMake(frame.size.width, size.height);
self.frame = frame;
self.text = text;
}
@end