UILabel 自适应宽高

#import <UIKit/UIKit.h>

@interface UILabel (UILabel_LabelHeighAndWidth)
+ (CGFloat)getHeightByWidth:(CGFloat)width title:(NSString *)title font:(UIFont*)font;

+ (CGFloat)getWidthWithTitle:(NSString *)title font:(UIFont *)font;
@end
#import "UILabel+UILabel_LabelHeighAndWidth.h"

@implementation UILabel (UILabel_LabelHeighAndWidth)
+ (CGFloat)getHeightByWidth:(CGFloat)width title:(NSString *)title font:(UIFont *)font // 自适应高
{

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, width, 0)];
    label.text = title;
    label.font = font;
    label.numberOfLines = 0;
    [label sizeToFit];
    CGFloat height = label.frame.size.height;
    return height;
}

+ (CGFloat)getWidthWithTitle:(NSString *)title font:(UIFont *)font {// 自适应宽
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 1000, 0)];
    label.text = title;
    label.font = font;
    [label sizeToFit];
    return label.frame.size.width;
}
@end

例如:CGFloat width1 = [UILabel getWidthWithTitle:strzhengcahngshu font:cell.zhengchangLabel.font];

cell.zhengchangshuLabel.frame = CGRectMake(46, 60, width1, 15);

cell.zhengchangshuLabel.text = strzhengcahngshu;

说明:记得引入头文件

#import "UILabel+UILabel_LabelHeighAndWidth.h"
时间: 2024-11-25 11:56:40

UILabel 自适应宽高的相关文章

UILabel实现自适应宽高需要注意的地方(三)

一.需求图如下所示 UILabel 的高度自适应 UILabel中的段落间距可设置 图片效果如下: 调整段落适应长宽高方式: 需求: 保证"游戏玩法" 章节,UILabel高度自适应,行内距为4px 做法: UILabel实现自适应宽高(一)中说明了 UILabel 自适应的方法,但是如果加行间距,就要用到  NSMutableAttributedString  富文本的方式实现,来判断行内距然后再通过 sizetofit 进行高度自适应. 自适应方法如下: Coding: - (vo

label 自适应宽 高

//初始化label    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];    //设置自动行数与字符换行    [label setNumberOfLines:0];    // 测试字串    NSString *str = @"\n  一别之后 两地相悬 只说三四月 谁知五六年 七玄琴无心谈 八行书无可传 九连环从中断 十里长亭望眼欲穿 百思想 千系念 万般无奈把郎怨  \n  万言千语说不完 百

OpenGL ES学习笔记(二)&mdash;&mdash;平滑着色、自适应宽高及三维图像生成

首先申明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. <Android学习笔记--OpenGL ES的基本用法.绘制流程与着色器编译>中实现了OpenGL ES的Android版HelloWorld,并且阐明了OpenGL ES的绘制流程,以及编译着色器的流程及注意事项.本文将从现实世界中图形显示的角度,说明OpenGL ES如何使得图像在移动设备上显示的更加真实.首先,物体有各种颜色

页面DIV自适应宽高

代码如下: <html xmlns=" http://www.w3.org/1999/xhtml "> <head runat="server">     <title>窗口大小</title> </head> <body onload="findDimensions();"> <h2 align="center">请调整浏览器窗口大小<

关于UILabel的宽高自适应

我们在使用UILabel的时候,往往估计一个frame,然后根据这个估计的frame来定义内容 然而情况往往并不总是这么如意,很多情况下,我们需要根据文字的大小多少来定义label的长度和宽度,怎么办呢 下面依次讲一下长度和宽度的自适应 宽度自适应: 这里往往是根据文字多少来定义的label的长度,假设我们只需要显示一行字,但是这一行又希望是根据文字大小来定义其宽度,好吧!要求还蛮多的. 这样做吧 UILabel *label = [[UILabel alloc] initWithFrame:C

实现宽高自适应

1 <!DOCTYPE html> 2 <head> 3 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/> 4 <title>test</title> 5 <link rel="stylesheet" type="text/css" href="bootstrap.m

css 宽高自适应的div 元素 如何居中 垂直居中

在我们 编写css 样式的时候经常会遇见一个问题 那就是一个 宽高未知的元素 要让他 垂直居中如何实现这个呢 下面是我常用的两种方法 上代码 下面的是 结构代码 <div class="wrap">//此处为父组件 我们会设置父级的宽高并让其居中 <div class="center">//子组件我们要实现它的垂直居中 不设置他的宽高 宽高 都由下面的img引入的图片撑开 <img width="100px" src

img图片自适应宽和高[转]

控制缩略图常见的是JS来控制,还有就是最直接的方法定义img的宽高:下面两种方法自适应宽和高,zhenzhai推荐使用CSS方法:一.CSS方法:主 要是在CSS设置最小值和最大值(max-width: 100px; max- height: 100px; width: expression(this.width >100 && this.height < this.width ? 100: true); height: expression(this.height > 

网页宽高自适应大小

如今,显示器的分辨率越来越多,终端也变得多样化,web开发页面的自适应问题越来越多,如果不做处理,一旦显示器的分辨率发生变化,展示的内容可能出现许多意料之外的排版问题.关于不同终端的展示问题可以通过响应式布局来实现,而不需要响应式布局时我们需要自己来避免上述问题. 宽度自适应: 1.设置最外层容器(如 DIV)的 width 为 100%: 2.如果网站头部有图片展示,那就不能简单设置宽度为 100%,会出现 repeat 的情况,或者图片大小超出最外层容器宽度,此时可以设置最外层容器宽度为固定