zoukankan      html  css  js  c++  java
  • IOS UILabel的自适应

    1  //创建label  

         UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];  

    2  //文本  

         NSString *string = @"11111111122222222233333333";  

         UIFont *font = [UIFont fontWithName:@"Arial" size:12];  

    3  //设置自动行数与字符换行(文本多行显示) 

       (1)  label.lineBreakMode = UILineBreakModeWordWrap;

             [label setNumberOfLines:0]; //行数为不限制数量

       (2)  label.numberOfLines = 1;    //行数设置为1,不设置时系统会默认行数为1 

             label.adjustsFontSizeToFitWidth =YES;  //根据字体大小(只为1)调整尺寸  

    4  //设置一个行高上限  

        CGSize size = CGSizeMake(320,2000);  

    5 //计算实际frame大小,并将label的frame变成实际大小  

        CGSize labelsize = [string  sizeWithFont:font constrainedToSize:size       lineBreakMode:UILineBreakModeWordWrap];  

       [label setFrame:CGRectMake:(0,0, labelsize.width, labelsize.height)];

    6  //放到view上

       [self.view addSubview:self.label];

    提示:

        1 当label大小使用sizeToFit方法,调整大小时会考虑到该属性中存储的值: [label sizeToFit];

        2 当文本内容很多,label无法全部显示时label会将文本内容以省略号的方式代替

           label的文本省略方式的设置请链接:http://www.cnblogs.com/luoyubuku/p/3816922.html

      

  • 相关阅读:
    java 多线程2
    java 多线程1
    java Object
    java 模板
    03015_JSTL技术
    运维人员常用的Linux命令总结
    oracle的userenv和nls_lang详解
    Oracle字符集检查和修改
    sql语句中(+)的作用
    Oracle事务Transaction
  • 原文地址:https://www.cnblogs.com/luoyubuku/p/3820358.html
Copyright © 2011-2022 走看看