美文网首页
iOS 获取字符串的长度和高度/UILabel的text自适应

iOS 获取字符串的长度和高度/UILabel的text自适应

作者: 90de46ea2b08 | 来源:发表于2017-03-14 11:08 被阅读2335次

    获取字符串的长度和高度

    CGRect nameRect = [self getSizeWithStr:myName?myName:@""];
    
    -(CGRect )getSizeWithStr:(NSString *)str
    {
        UIFont *font = [UIFont boldSystemFontOfSize:15.0];
        return [str boundingRectWithSize:CGSizeMake(MAXFLOAT, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:[NSDictionary dictionaryWithObjectsAndKeys:font,NSFontAttributeName, nil] context:nil];
    }
    

    UILabel的text自适应

    • 1.没有设置换行,但设置自适应时,label.text默认为显示一行,并且自适应宽度(初始化label的宽、高无作用)
    • 2.没有设置自适应,但设置换行时,label.text会根据初始化时label的宽和高显示,显示不下就为...
    • 3.设置自适应和换行时:初始化label,宽为0时,label.text默认为显示一行,并且自适应宽度;宽不为0时,label.text会自适应宽和高(label初始化时设置的宽度为自适应的最大宽度,初始化label的高无作用)
    UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(10, 100, 100, 2220)];
    label.text = @"qweertukhjgyjdhhghhjhjvjhvjhvjhvjhgcfjhjvhjjfjhjhvhjvn,n,bkjfkdfhdlsfldfkjdfkjdfdsfdfldlf";
    label.numberOfLines = 0;//换行
     [label sizeToFit];//自适应
    NSLog(@"%f",label.frame.size.width);
    [self.view addSubview:label];
    

    相关文章

      网友评论

          本文标题:iOS 获取字符串的长度和高度/UILabel的text自适应

          本文链接:https://www.haomeiwen.com/subject/iebcnttx.html