iOS7之前:
cgSize=[str sizeWithFont:font];
但是在ios7不准确
iOS7之后:
1.sizeThatFits
//文本文字自适应大小 notice.adjustsFontSizeToFitWidth = YES; notice.text=str; notice.textAlignment=NSTextAlignmentCenter; //使用sizeThatFit计算lable大小 CGSize sizeThatFit=[notice sizeThatFits:CGSizeZero]; //重新指定frame notice.frame=CGRectMake(0, 0, sizeThatFit.width, sizeThatFit.height); notice.center = CGPointMake(self.view.bounds.size.width/2, kL20) ;
2.sizeToFit
//文本文字自适应大小 notice.adjustsFontSizeToFitWidth = YES; notice.text=str; notice.textAlignment=NSTextAlignmentCenter; [notice sizeToFit];//使用sizeToFit notice.center = CGPointMake(self.view.bounds.size.width/2, kL20) ;
注意:
1.计算lable大小的时候需要先进行lable的text赋值
2.如果要将lable居中显示的话,lable.center属性的设置必须放在设置新大小之后,不然会出现不居中的情况
网友评论