zoukankan      html  css  js  c++  java
  • UILabel+Create

    #import <UIKit/UIKit.h>
    
    @interface UILabel (Create)
    
    /**
     *  创建普通Label
     *
     *  @param frame          frame
     *  @param text           text
     *  @param font           font
     *  @param textColor      textColor
     *  @param backgroudColor backgroudColor
     *  @param textAlignment  textAlignment
     *
     *  @return UILabel
     */
    + (UILabel *)createLabelWithFrame:(CGRect)frame text:(NSString *)text font:(UIFont *)font textColor:(UIColor *)textColor backgroudColor:(UIColor *)backgroudColor  textAlignment:(NSTextAlignment)textAlignment;
    
    /**
     *  创建自增高Label
     *
     *  @param frame          frame
     *  @param text           text
     *  @param font           font
     *  @param textColor      textColor
     *  @param backgroudColor backgroudColor
     *  @param textAlignment  textAlignment
     *
     *  @return UILabel
     */
    + (UILabel *)createAdjustsLabelWithFrame:(CGRect)frame text:(NSString *)text font:(UIFont *)font textColor:(UIColor *)textColor backgroudColor:(UIColor *)backgroudColor  textAlignment:(NSTextAlignment)textAlignment;
    
    @end
    
    #import "UILabel+Create.h"
    
    @implementation UILabel (Create)
    
    + (UILabel *)createLabelWithFrame:(CGRect)frame text:(NSString *)text font:(UIFont *)font textColor:(UIColor *)textColor backgroudColor:(UIColor *)backgroudColor  textAlignment:(NSTextAlignment)textAlignment
    {
        UILabel *label = [[UILabel alloc]initWithFrame:frame];
        label.text = text;
        [label setFont:font];
        [label setTextColor:textColor];
        if (backgroudColor == nil) {
            [label setBackgroundColor:[UIColor clearColor]];
        }
        else{
            [label setBackgroundColor:backgroudColor];
        }
        [label setTextAlignment:textAlignment];
        label.numberOfLines = 0;
        
        return  label;
    }
    
    + (UILabel *)createAdjustsLabelWithFrame:(CGRect)frame text:(NSString *)text font:(UIFont *)font textColor:(UIColor *)textColor backgroudColor:(UIColor *)backgroudColor  textAlignment:(NSTextAlignment)textAlignment
    {
        UILabel *label = [[UILabel alloc]initWithFrame:frame];
        label.text = text;
        [label setFont:font];
        [label setTextColor:textColor];
        if (backgroudColor == nil) {
            [label setBackgroundColor:[UIColor clearColor]];
        }
        else{
            [label setBackgroundColor:backgroudColor];
        }
        [label setTextAlignment:textAlignment];
        label.numberOfLines = 0;
        
        CGSize maxNameLabelSize = CGSizeMake(frame.size.width,2000);
        CGSize labelSize;
        labelSize = [text boundingRectWithSize:maxNameLabelSize
                                       options:NSStringDrawingUsesLineFragmentOrigin
                                    attributes:@{NSFontAttributeName:font}
                                       context:nil].size;
        [label setFrame:CGRectMake(frame.origin.x, frame.origin.y, labelSize.width, labelSize.height)];
        
        return  label;
    }
    
    // 使用
    [self.view addSubview:[UILabel createLabelWithFrame:CGRectMake(10, 100, self.view.frame.size.width-20, 30) text:_str font:[UIFont systemFontOfSize:14.f] textColor:[UIColor redColor] backgroudColor:[UIColor clearColor] textAlignment:NSTextAlignmentLeft]];
  • 相关阅读:
    Linux 命令汇总总结相关
    数据结构---python---表
    python-----Queue模块
    再看python多线程------threading模块
    <转> Struct 和 Union区别 以及 对内存对齐方式的说明
    python装饰器
    HTTP权威指南----缓存
    HTTP权威指南----连接管理
    以python理解Linux的IO多路复用,select、poll、epoll
    <转载> pycharm快捷键及一些常用设置
  • 原文地址:https://www.cnblogs.com/joesen/p/4079380.html
Copyright © 2011-2022 走看看