你的位置:首页 > 操作系统

[操作系统]UILabel自适应文本,让文本自适应


//UILabel自适应文本的高度

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

    label.numberOfLines = 0;

    label.lineBreakMode = NSLineBreakByWordWrapping;

    label.text = @"本店于十一期间特推出一系列优惠,限时限量敬请选购!沙发:钻石品质,首领风范!床垫:华贵典雅,彰显时尚!尊贵而不失奢华,典雅却不失自然!温馨和浪漫的生活,我们与你一同创造!";

    CGSize size = [label sizeThatFits:CGSizeMake(label.frame.size.width, MAXFLOAT)];

    label.frame =CGRectMake(0, 100, 300, size.height);

    label.font = [UIFont systemFontOfSize:14];

    [self.view addSubview:label];

 

//如果让文本自适应

    //经常遇到,UILabel里面的显示区域固定,   但是里面的文字显示合适的字体大小的时候,可以用下面的方法:

    UILabel *m_titleLabel = [[UILabel alloc]initWithFrame:CGRectMake(200, 350, 40, 30)];

    m_titleLabel.backgroundColor = [UIColor clearColor];

    m_titleLabel.textColor = [UIColor redColor];

    m_titleLabel.font = [UIFont systemFontOfSize:20];

    m_titleLabel.adjustsFontSizeToFitWidth = YES;

    m_titleLabel.minimumFontSize = 6;//默认为0

    m_titleLabel.text = @"flying in the sky";

    //就是在空间够的情况下,使用20号字体,如果空间不够,那么就会自动将字体向下调整,但是也不会少于6号字体,如果6号字体也显示不完,后续显示省略号。。。

    [self.view addSubview:m_titleLabel];