UILabel居上对齐居下对齐类别扩展
2014-04-19 15:10
351 查看
实现原理:当该label不足以达到要求的高度时,居上对齐时在页末补“\n空格”,居下对齐时在页首补“空格\n”
UILabel+VerticalAlign.h
UILabel+VerticalAlign.m
UILabel+VerticalAlign.h
@interface UILabel(VerticalAlign) -(void)alignTop; -(void)alignBottom; @end
UILabel+VerticalAlign.m
@implementation UILabel(VerticalAlign) -(void)alignTop { CGSize fontSize =[self.text sizeWithFont:self.font]; double finalHeight = self.frame.size.height;//fontSize.height *self.numberOfLines; double finalWidth =self.frame.size.width;//expected width of label CGSize theStringSize =[self.text sizeWithFont:self.font constrainedToSize:CGSizeMake(finalWidth, finalHeight) lineBreakMode:self.lineBreakMode]; int newLinesToPad =(finalHeight - theStringSize.height)/ fontSize.height; for(int i=0; i<newLinesToPad; i++) self.text =[self.text stringByAppendingString:@"\n "]; } -(void)alignBottom { CGSize fontSize =[self.text sizeWithFont:self.font]; double finalHeight = fontSize.height *self.numberOfLines; double finalWidth =self.frame.size.width;//expected width of label CGSize theStringSize =[self.text sizeWithFont:self.font constrainedToSize:CGSizeMake(finalWidth, finalHeight) lineBreakMode:self.lineBreakMode]; int newLinesToPad =(finalHeight - theStringSize.height)/ fontSize.height; for(int i=0; i<newLinesToPad; i++) self.text =[NSString stringWithFormat:@" \n%@",self.text]; } @end
相关文章推荐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- ios UILabel设置居上对齐,居中对齐,居下对齐
- iOS UILabel设置居上对齐,居中对齐,居下对齐
- iOS中UILabel设置居上对齐、居中对齐、居下对齐及文字置顶显示
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- UILABEL 增加居上对齐 居下对齐方法
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS的UILabel设置居上对齐,居中对齐,居下对齐
- iOS经典讲解之UILabel居上居下显示
- 自定义UILabel设置垂直方向的居上,居中,居下
- UILable属性详解,设置居上对齐,居中对齐,居下对齐,获取斜体字,字体、大小、单位、颜色
- 自定义UILabel,具有居上/居下/居中的功能
- Category和Extension 类别与类扩展
- objective-c中Category类别(扩展类)专题总结