问题: 我有一个UILabel高度最多能显示两行,如果里面内容只有一行,它是垂直居中的。怎么能让它顶端对齐呢?
重写UILabel的drawInRect方法 创建一个UILabel的子类,用起来非常方便:
#import@interface TopLeftLabel : UILabel@end
// TopLeftLabel.m#import "TopLeftLabel.h"@implementation TopLeftLabel- (id)initWithFrame:(CGRect)frame { return [super initWithFrame:frame];}- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines { CGRect textRect = [super textRectForBounds:bounds limitedToNumberOfLines:numberOfLines]; textRect.origin.y = bounds.origin.y; return textRect;}-(void)drawTextInRect:(CGRect)requestedRect { CGRect actualRect = [self textRectForBounds:requestedRect limitedToNumberOfLines:self.numberOfLines]; [super drawTextInRect:actualRect];}