2010-04-21 55 views
0

我有一個UILabel:如何在UILabel非中心創建文本?

descriptionLabel = [[UILabel alloc] initWithFrame:CGRectMake(200, 30, 130, 150)]; 
    [descriptionLabel setFont:[Utils getSystemFontWithSize:14]]; 
    [descriptionLabel setBackgroundColor:[UIColor clearColor]]; 
    [descriptionLabel setTextColor:[UIColor whiteColor]]; 
    descriptionLabel.numberOfLines = 0; 
    descriptionLabel.lineBreakMode = UILineBreakModeWordWrap; 
    [self addSubview:descriptionLabel]; 

如果文本只有1線長就會出現在標籤的中間。

是否有反正我可以從標籤的左上角而不是中間中心顯示文字?

回答

2

您可以設置

[descriptionLabel setTextAlignment:UITextAlignmentLeft];

或者如果你喜歡點語法

descriptionLabel.textAlignment = UITextAlignmentLeft;

+0

不幸的是,該文本還出現在中間做了這些改變之後。 – 2010-04-21 17:51:31

+1

你的意思是垂直在中間嗎?儘管是的,它是左對齊的嗎? 您可以在使用NSString的sizeWithFont方法計算後設置標籤的高度 - 更多細節:http://stackoverflow.com/questions/455553/what-is-nsstring-sizewithfontforwidthlinebreakmode-good-for – prendio2 2010-04-21 17:56:57

0

左/右對齊集合的UILabel的textAlignment財產要麼UITextAlignmentLeftUITextAlignmentRight

更多的微調,您可以覆蓋drawTextInRect: