• UILabel


    创建一个UILabel 对象

    UILabel *otherLab = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 100, 20)];

    设置文本

    otherLab.text = @"文本内容";

    设置文本字体

    otherLab.font = [UIFont systemFontOfSize:15];
    
    或
    
    otherLab.font = [UIFont fontWithName:@"Arial" size:35];

    设置文本颜色

    otherLab.textColor =  [UIColor redColor];

    设置文本水平显示位置

    otherLab.textAlignment = NSTextAlignmentCenter;  //不能用otherLab.textAlignment = UITextAlignmentCenter; 因为UITextAlignmentCenter已经过期不能用

    设置label是否可以显示多行,0则显示多行

    otherLab.numberOfLines = 0;

    根据内容大小,动态设置UILabel的宽高度

      

    /**
    *   计算文字的尺寸
    *
    *   参数一 text,UILabel的文字内容
    *   参数二 font,文字内容的字体
    *   参数三 maxSize,UILabel最大宽度和高度
    */

    - (CGSize)sizeWithText:(NSString *)text font:(UIFont *)font maxSize:(CGSize)maxSize

      {

          //计算昵称文字在屏幕上占据的宽度和高度(以下这方法是用来计算左右这段文字在屏幕上占据多宽和多高)
          if (font == NULL)
          {
              return CGSizeMake(0, 0);
            }else{
              NSDictionary *attrs = @{NSFontAttributeName : font};
              CGSize sizr = [text boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attrs context:nil].size;
              return sizr;
          }
    }

        // 方法调用

        //#define SCREEN_WIDTH [[UIScreen mainScreen]bounds].size.width   --------宏定义 SCREEN_WIDTH 为屏幕宽度 

            UILabel *otherLab = [[UILabel alloc]init];

           

         otherLab.numberOfLines = 0; //允许换行

           NSString *name = @"姓名";

           CGSize productNameSize = [self sizeWithText:name font:otherLab.font maxSize:CGSizeMake(SCREEN_WIDTH * 0.7, MAXFLOAT)];
           otherLab.frame = CGRectMake(10, 20, productNameSize.width, productNameSize.height);

    换行模式

    typedef enum {
        UILineBreakModeWordWrap = 0,      // 以空格为边界,保留整个单词
       UILineBreakModeCharacterWrap,     // 保留整个字符
       UILineBreakModeClip,                     // 到边界为止
       UILineBreakModeHeadTruncation,    // 省略开始,以……代替
       UILineBreakModeTailTruncation,      // 省略结尾,以……代替 
       UILineBreakModeMiddleTruncation,  // 省略中间,以……代替,多行时作用于最后一行  
     } UILineBreakMode
  • 相关阅读:
    Python—将py文件编译成so文件
    Python—网络通信编程之套接字基本原理
    Python—IO多路复用之epoll总结
    Python—IO多路复用之poll总结
    Python—IO多路复用之select总结
    希尔排序
    直接插入排序
    冒泡排序
    选择排序(C++,Java,Python实现)
    二叉搜索树的相关功能的实现
  • 原文地址:https://www.cnblogs.com/xsphehe/p/5641208.html
Copyright © 2020-2023  润新知