OC: UILabel+MaxMethod

.h文件

#import <UIKit/UIKit.h>

@interface UILabel (MaxMethod)
// 设置UILabel两端对齐
- (void)changeAlignmentRightandLeft;
@end

.m文件

#import "UILabel+MaxMethod.h"
#import <CoreText/CoreText.h>

@implementation UILabel (MaxMethod)
- (void)changeAlignmentRightandLeft {
    CGSize textSize = [self.text boundingRectWithSize:CGSizeMake(self.frame.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName : self.font} context:nil].size;
    CGFloat margin = (self.frame.size.width - textSize.width) / (self.text.length - 1);
    NSNumber *number = [NSNumber numberWithFloat:margin];
    NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:self.text];
    [attributeString addAttribute:(id)kCTKernAttributeName value:number range:NSMakeRange(0, self.text.length - 1)];
    self.attributedText = attributeString;
}
@end
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 2,719评论 0 3
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,391评论 0 2
  • ## 可重入函数 ### 可重入性的理解 若一个程序或子程序可以安全的被并行执行,则称其为可重入的;即当该子程序正...
    夏至亦韵阅读 725评论 0 0
  • 踩在柔软细腻的沙滩上,抬头面向一望无际的大海,隐约看着层叠起伏的山峦,那一刻心旷神怡,忘却了所有的烦恼与忧虑...
    欢欢乐乐1317阅读 390评论 0 0
  • 这会真的很烦躁。 看到孩子到了上课时间还没戴好指甲,已熟识三年的老师很生气,她用命令的口吻叫着孩子的名字,让她快点...
    坚持成长阅读 299评论 1 2