ios学习day3

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios学习day3相关的知识,希望对你有一定的参考价值。

UIlabel

UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(10,30, CGRectGetWidth(self.view.frame) -20, 200)];

    //设置文字

    label.text = @"欢迎收看灌篮高手,我是安溪教练";

    //设置文字颜色

    label.textColor = [UIColor grayColor];

    //默认17号字体

    label.font = [UIFont systemFontOfSize:34];

    //对齐方式

    label.textAlignment = NSTextAlignmentCenter;

    //设置阴影

    label.shadowColor = [UIColor redColor];

    //设置阴影映射大小,默认CGSizeMake(0, -1)

    label.shadowOffset = CGSizeMake(-2, -2);

    //断句,展示缩略

    label.lineBreakMode = NSLineBreakByTruncatingTail;

    //行数0为自动匹配行数

    label.numberOfLines = 1;

    //字体是否适应宽度(Size无效)

    label.adjustsFontSizeToFitWidth = YES;

    //最小字体比例

//    label.minimumScaleFactor = 0.9;

UIfont

输出编译器所有的字体

for (NSString * familyName in [UIFont familyNames]) {

        NSLog(@"%@",familyName);

        NSArray * familys = [UIFont fontNamesForFamilyName:familyName];

        for (NSString * fontName in familys) {

            NSLog(@"%@",fontName);

        }

    }

具体实现方法

//斜体

        //[UIFont italicSystemFontOfSize:50];

        //字体加粗

        //[UIFont boldSystemFontOfSize:50];

        //设置系统字体

        //[UIFont systemFontOfSize:10];

        //[UIFont fontWithName:@"Heiti TC" size:25];

富文本

段落设置

NSMutableParagraphStyle * paragraph = [[NSMutableParagraphStyle alloc] init];

    paragraph.lineSpacing = 10;//行间距

    paragraph.paragraphSpacing = 50;//段间距

    paragraph.firstLineHeadIndent = 50;//第一段空几格

富文本实现

 NSDictionary * dictA = @{NSFontAttributeName:[UIFont systemFontOfSize:20],

                             NSForegroundColorAttributeName:[UIColor greenColor],//前景色

                             NSBackgroundColorAttributeName:[UIColor grayColor],//后景色

                             NSParagraphStyleAttributeName:paragraph

//                             NSObliquenessAttributeName:@0.5 //斜体

//                             NSStrokeColorAttributeName:[UIColor whiteColor],

//                             NSStrokeWidthAttributeName:@2,//描边

//                             NSKernAttributeName:@20,//字间距

//                             NSStrikethroughStyleAttributeName:@2,//删除线

//                             NSUnderlineStyleAttributeName:@1,//下划线

                             };

    

    NSAttributedString * attribute = [[NSAttributedString alloc] initWithString:exampleString attributes:dictA];

可变富文本

NSMutableAttributedString * astring = [[NSMutableAttributedString alloc] initWithString:string];

 

 

 

 

//可变富文本

    NSMutableAttributedString * mutableAttribute = [[NSMutableAttributedString alloc] initWithString:exmapleString];

    

    NSRange range1 = {0,3};

    NSRange range2 = {4,5};

    [mutableAttribute addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:50] range:range1];

    

    NSDictionary * dict = @{NSForegroundColorAttributeName:[UIColor magentaColor],

                            NSBackgroundColorAttributeName:[UIColor cyanColor]};

    

    [mutableAttribute addAttributes:dict range:range2];

 

追加子符串

NSAttributedString * string2 = [[NSAttributedString alloc] initWithString:@"好哒!" attributes:dict2];

    

    [astring appendAttributedString:string2];

计算label的高度

//一定要先确定宽度,再根据宽度和字体计算size—多行显示

    CGSize size = [string boundingRectWithSize:CGSizeMake(width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil].size;

单行显示

NSString * string = @"黑猫警长";

    NSDictionary * dict = @{NSFontAttributeName:[UIFont systemFontOfSize:50]};

    CGSize size = [string sizeWithAttributes:dict];

label的自适应-多行

UILabel * label = [[UILabel alloc] init];

    label.text = string;//先给字符串,再计算它的size

    label.numberOfLines = 0;

    label.backgroundColor = [UIColor greenColor];

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

    label.frame = CGRectMake(20, 50, size.width, size.height);

    [self.view addSubview:label];

 

 

UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(20, 50, self.view.frame.size.width - 40, 0)];

    label.text = string;

    label.numberOfLines = 0;

    label.backgroundColor = [UIColor greenColor];

    //使用sizeToFit一定要设置宽度

    [label sizeToFit];

    [self.view addSubview:label];

 

以上是关于ios学习day3的主要内容,如果未能解决你的问题,请参考以下文章

第二周 day3 python学习笔记

python day3 学习整理

php学习day3--php基本语法与变量

Python自动化运维课程学习--Day3

Go语言学习查缺补漏ing Day3

spring--啃spring官方文档day3