UILabel 使用 标签,圆角,富文本

///UILabel 显示的文本只读,无法编辑,可以根据文字个数自动换行;
///UITextField 可编辑本文,但是无法换行,只能在一行显示;当点击键盘上的return时,
//会收到一个事件做一些事情。
////UITextView 可编辑文本,提供换行功能。



01    //创建uilabel    
02    UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(20, 40, 280, 80)];    
03    
04    //设置背景色    
05    label1.backgroundColor = [UIColor grayColor];    
06    
07    //设置tag    
08    label1.tag = 91;    
09    
10    //设置标签文本    
11    label1.text = @"Hello world!";    
12    //设置标签文本字体和字体大小    
13    label1.font = [UIFont fontWithName:@"Arial" size:30];    
        
        //字体
    //系统字体
    label.font = [UIFont systemFontOfSize:30.0];
    //加粗字体
    label.font = [UIFont boldSystemFontOfSize:30.0];
    //斜体
    label.font = [UIFont italicSystemFontOfSize:30.0];
    //拿到所有字体
    NSArray* fonts = [UIFont familyNames];
    //通过字体名字设置字体//////////////////////////
    label.font = [UIFont fontWithName:[fonts objectAtIndex:5] size:30.0];
        
14    //设置文本对其方式    
15    label1.textAlignment = UITextAlignmentCenter;    
16    //文本对齐方式有以下三种    
17    //typedef enum {    
18    //    UITextAlignmentLeft = 0,左对齐    
19    //    UITextAlignmentCenter,居中对齐    
20    //    UITextAlignmentRight, 右对齐                     
21    //} UITextAlignment;    
22    
23    //文本颜色    
24    label1.textColor = [UIColor blueColor];    
25    //超出label边界文字的截取方式    
26    label1.lineBreakMode = UILineBreakModeTailTruncation;    
27    //截取方式有以下6种    
28    //typedef enum {           
29    //    UILineBreakModeWordWrap = 0,    以空格为边界,保留整个单词             
30    //    UILineBreakModeCharacterWrap,   保留整个字符             
31    //    UILineBreakModeClip,            到边界为止             
32    //    UILineBreakModeHeadTruncation,  省略开始,以……代替           
33    //    UILineBreakModeTailTruncation,  省略结尾,以……代替          
34    //    UILineBreakModeMiddleTruncation,省略中间,以……代替,多行时作用于最后一行           
35    //} UILineBreakMode;    
36    
37    //文本文字自适应大小    
38    label1.adjustsFontSizeToFitWidth = YES;    
39    //当adjustsFontSizeToFitWidth=YES时候,如果文本font要缩小时    
40    //baselineAdjustment这个值控制文本的基线位置,只有文本行数为1是有效    
41    label1.baselineAdjustment = UIBaselineAdjustmentAlignCenters;    
42    //有三种方式    
43    //typedef enum {    
44    //    UIBaselineAdjustmentAlignBaselines = 0, 默认值文本最上端于label中线对齐    
45    //    UIBaselineAdjustmentAlignCenters,//文本中线于label中线对齐    
46    //    UIBaselineAdjustmentNone,//文本最低端与label中线对齐    
47    //} UIBaselineAdjustment;    
48    
49    //文本最多行数,为0时没有最大行数限制    
50    label1.numberOfLines = 2;    
51    //最小字体,行数为1时有效,默认为0.0    
52    label1.minimumFontSize = 10.0;    
53    //文本高亮    
54    label1.highlighted = YES;    
55    //文本是否可变 :未激活,灰色,设置颜色无效
56    label1.enabled = YES;    
57    //去掉label背景色    
58    //label1.backgroundColor = [UIColor clearColor];    
59    
60    //文本阴影颜色    
61    label1.shadowColor = [UIColor grayColor];    
62    //阴影大小    
63    label1.shadowOffset = CGSizeMake(1.0, 1.0);    
64    
65    //是否能与用户交互    
66    label1.userInteractionEnabled = YES;    
67    ///边框
    label.layer.borderColor = [[UIColor redColor] CGColor];
    label.layer.borderWidth = 2;
    
    //颜色渐变
    label.textColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@""]];
    
    
    //自动适应高度
    CGSize size = CGSizeMake(280, 1000);
    UIFont *lableFont = [UIFont fontWithName:@"Arial" size:12.0];
    CGSize labelSize = [label.text sizeWithFont:lableFont constrainedToSize:size];//7.0 ,现如下
    //[label1.text boundingRectWithSize:(CGSize) options:(NSStringDrawingOptions) attributes:(NSDictionary *) context:(NSStringDrawingContext *)]
    label.frame = CGRectMake(0, 0, 280, labelSize.height);
    
    [self.view addSubview:label1];    
    [label1 release];

/*
- (void)buttonClick:(UIButton*)button{
    //父视图通过tag值获取子视图的指针对象
    /*
     子视图可以设置一个tag值,然后添加到父视图上,父视图就可以通过这个tag值拿到子视图的指针。
     tag值也可以保存一些用户的信息。
     */
    UILabel* label = (UILabel*)[self.view viewWithTag:100];
    label.text = @"我被修改了";
}
*/

//简单富文本
NSString *text = @"我是大坏蛋哦!";
    NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:text];
    [attributeString setAttributes:@{NSForegroundColorAttributeName : [UIColor yellowColor],   NSFontAttributeName : [UIFont systemFontOfSize:18]} range:NSMakeRange(2, 3)];
    label1.attributedText = attributeString;
//修改Range 所包含文本的 颜色、字体大小

//圆角
label.layer.backgroundColor =[UIColor yellowColor].CGColor;
    label.layer.cornerRadius =5.0;
    label.layer.frame = CGRectInset(label.layer.frame, 20, 20);


你可能感兴趣的:(UILabel,标签,富文本,圆角)