码迷,mamicode.com
首页 > 其他好文 > 详细

UIKit 框架之UILabel

时间:2015-05-17 23:33:30      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

http://www.cnblogs.com/ygm900/archive/2013/05/19/3086902.html

根据字数自适应高度暂未实现

//
//  ViewController.m
//  UIlabel
//
//  Created by cyw on 15-5-17.
//  Copyright (c) 2015年 cyw. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
	UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(20, 20, 100, 50)];
//    设置文本内容
    label.text=@"labellabellabellabellabellabellabellabellabellabellabellabellabellabel";
//     设置字体
    label.font=[UIFont systemFontOfSize:20];
//    设置文本颜色
    label.textColor=[UIColor blackColor];
//    设置阴影颜色
    label.shadowColor=[UIColor yellowColor];
//    设置阴影偏移量
    label.shadowOffset=CGSizeMake(10, 10);
//    文本对齐方式
    label.textAlignment=NSTextAlignmentCenter;
//    文本过长时的显示格式
//    typedef NS_ENUM(NSInteger, NSLineBreakMode) {
//        NSLineBreakByWordWrapping = 0,   以单词为显示单位显示,后面部分省略不显示。
//        NSLineBreakByCharWrapping,	   以字符为显示单位显示,后面部分省略不显示。
//        NSLineBreakByClipping,           剪切与文本宽度相同的内容长度,后半部分被删除。
//        NSLineBreakByTruncatingHead,     前面部分文字以……方式省略,显示尾部文字内容
//        NSLineBreakByTruncatingTail,     结尾部分的内容以……方式省略,显示头的文字内容。
//        NSLineBreakByTruncatingMiddle	   中间的内容以……方式省略,显示头尾的文字内容。
//    }
    label.lineBreakMode=NSLineBreakByCharWrapping;
//    最多显示的行数 默认0显示多行
    label.numberOfLines=0;
//    是否可用
    label.enabled=YES;
//    是否高亮
    label.highlighted=NO;
//    高亮字体颜色
    label.highlightedTextColor=[UIColor redColor];
    //自动调整字体来适应宽度
    label.adjustsFontSizeToFitWidth=YES;
    //如果adjustsFontSizeToFitWidth属性设置为YES,这个属性就来控制文本基线的行为。
//    typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
//        UIBaselineAdjustmentAlignBaselines = 0,  默认,文本最上端与中线对齐。
//        UIBaselineAdjustmentAlignCenters,        文本中线与label中线对齐。
//        UIBaselineAdjustmentNone,                文本最低端与label中线对齐。
//    };
    label.baselineAdjustment=UIBaselineAdjustmentAlignBaselines;
//    标签属性文本
//    NSString *text=@"text";
//    NSMutableAttributedString *textlabelStr=[[NSMutableAttributedString alloc]initWithString:text];
//    [textlabelStr setAttributes:@{NSForegroundColorAttributeName:[UIColor redColor],NSFontAttributeName:[UIFont systemFontOfSize:17]} range:NSMakeRange(1, 2)];
//    label.attributedText=textlabelStr;
    
//    计算UILabel随字体多行后的高度
    CGRect bounds=CGRectMake(0, 0, 200, 300);
    float height=[label textRectForBounds:bounds limitedToNumberOfLines:20].size.height;
    NSLog(@"%f",height);
    [self.view addSubview:label];
    //竖排文字
    UILabel *label1=[[UILabel alloc]init];
    label1.frame=CGRectMake(200, 200, 40, 200);

    label1.text=@"请\n竖\n直\n方\n向\n排\n列";
    label1.numberOfLines=[label1.text length];
    [self.view addSubview:label1];
    
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

 

UIKit 框架之UILabel

标签:

原文地址:http://www.cnblogs.com/cuiyw/p/4510724.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!