問題:label要多行顯示,按照這樣子設置,iOS9以上work,iOS8無用
self.bookNameLabel.lineBreakMode = NSLineBreakByCharWrapping; self.bookNameLabel.numberOfLines = 0; self.bookNameLabel.textAlignment = NSTextAlignmentCenter;
然后據說要加 sizeToFit:好吧,依然然並卵
然后據說要同時加font,好吧,多行出來了,但是不居中
然后stackOverFlow:https://stackoverflow.com/questions/28579776/nstextalignmentcenter-for-uilabel-not-working/35066864#35066864?newreg=725179871da349d698d31b72bdbb3565
work!
最終:
self.bookNameLabel.font =[UIFont systemFontOfSize:18]; self.bookNameLabel.lineBreakMode = NSLineBreakByCharWrapping; self.bookNameLabel.numberOfLines = 0; self.bookNameLabel.textAlignment = NSTextAlignmentCenter; [self.bookNameLabel sizeToFit]; self.bookNameLabel.frame = CGRectMake((self.frame.size.width-self.bookNameLabel.frame.size.width)/2, self.bookNameLabel.frame.origin.y, self.bookNameLabel.frame.size.width, self.bookNameLabel.frame.size.height);