UILabel的文字在左上角显示

你会不会发现有个问题 就是如果你设置的UILabel高度比较大时候,文字会显示在高度的中间,而不是在左上角

比如这个样子


Snip20170918_2.png

但是我们需要的UILabel的高度就是要这么高,因为我们需要换行,而且文字会有很多,但是如果文字不多时候,就出现上面这个问题,
看我项目中的效果

Snip20170918_3.png

UILabel的文字默认是靠左居中显示的,但是并没有属性让它显示在左上角,仔细想想,我们以前自定义UIButton那就很容易改变按钮里面的图片和文字的位置,所以我也是采用自定义UILabel来解决需求的
继成UILabel然后在.m文件重新下面三个方法即可

- (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];
    
}

效果如下:


Snip20170918_4.png

代码留给你喜欢和点赞留给我
http://git.oschina.net/lanyingwei/codes/c5aoquidgvyn0ptkx42w127
备注:

如果有不足或者错误的地方还望各位读者批评指正,可以评论留言,笔者收到后第一时间回复。

QQ/微信:2366889552 /lan2018yingwei。

简书号:凡尘一笑:[简书]

http://www.jianshu.com/users/0158007b8d17/latest_articles

感谢各位观众老爷的阅读,如果觉得笔者写的还凑合,可以关注或收藏一下,不定期分享一些好玩的实用的demo给大家。

文/凡尘一笑(简书作者)

著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,245评论 4 61
  • 来到现在的学校已将近1年半,几乎每一天都是忙碌的,恐慌的,担心的,起初的我觉得这都是学校的错,都是他们创造给我的...
    佳茹梦阅读 482评论 0 3
  • 今天早晨一睁眼7:31,我瞬间反应过来并且内心已经做好了准备:小宝要在20分钟内准备出门,我可能会催促他,他也极有...
    小花妈妈妈阅读 215评论 0 0
  • 又到了每年的这个时候,北京总是下雨,但从不连绵。 江南的雨是伴着青灰色的天空,和挥散不去的潮湿。北京的雨不一定伴着...
    漠一阅读 212评论 0 1