1.  坐标系

来自:http://www.cnblogs.com/mcj-coding/p/5100455.html  QQ: 863740091

如果在平面坐标系中我们要确定一个东西的位置和大小需要什么?(xy值和宽高)

在iOS 程序里,X轴和我们知道的一样,但是Y轴和我们知道的正好反过来 ,也就是说你以前认为的Y轴的负值,在我们iOS中是正数

2.  UILabel

展示一下UILabel的使用环境

UILabel 是一个视图类,即UIView的子类,在IOS中所有看的见,摸的着的,都是UIView的子类

UILabel 是标签视图,用于显示文字信息。

#import "RootViewController.h"

@interface RootViewController ()

{

UILabel *_label;

}

@end

@implementation RootViewController

// 这个ViewController 东西已经准备好,可以添加UI控件了

- (void)viewDidLoad {

[super viewDidLoad];

// 给界面添加了一个label对象

//    [self addLabel];

//

//    // 修改了label里面的文本信息

//    [self addMetch];

//    [self addLabelWithAttr];

// UILable去适应文本的大小

[self adutText];

}

- (void)addLabel

{

_label = [[UILabel alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];

// 设置背景颜色

_label.backgroundColor = [UIColor redColor];

// 设置label 的文本信息

_label.text = @"yes,you are a bad man, I am a good man. Do you belieffffve it?";

// 字体大小设置

_label.font = [UIFont systemFontOfSize:30];

// 设置字体为粗体

_label.font = [UIFont boldSystemFontOfSize:30];

// 设置字体为斜体(不支持中文)

_label.font = [UIFont italicSystemFontOfSize:30];

// 设置字体的样式

//    NSLog(@"%@",[UIFont familyNames]);(可以打印出字体的样式有多少)

//    label.font = [UIFont fontWithName:@"Zapfino" size:20];

// 设置自适应宽度

//    label.adjustsFontSizeToFitWidth = YES;

// 设置文字对齐方式(三种)

_label.textAlignment = NSTextAlignmentCenter;

// 设置最多显示几行

_label.numberOfLines = 4;

// 设置中断模式

//    NSLineBreakByWordWrapping  // 单词换行

//    NSLineBreakByCharWrapping, // 字符换行 ,如果显示不下,字符作为省略单位     NSLineBreakByClipping, // 单词换行,如果显示不下,字符作为省略单位

//    NSLineBreakByTruncatingHead,// 单词换行,如果显示不下,省略最后一行行首

//    NSLineBreakByTruncatingTail,// 单词换行,如果显示不下,省略最后一行行尾

//    NSLineBreakByTruncatingMiddle // 单词换行,如果显示不下,省略最后一行行中

_label.lineBreakMode = NSLineBreakByTruncatingMiddle;

// 设置阴影偏移量

_label.shadowOffset = CGSizeMake(2, 2);

_label.shadowColor = [UIColor yellowColor];

// 设置透明度(0 ~ 1) 默认是1 数值越小透明度越大

_label.alpha = 1;

// tag(可以通过这个tag 在其他方法里找到这个控件)

_label.tag = 100;

// 把label 添加到屏幕上

[self.view addSubview:_label];

}

- (void)addLabelWithAttr

{

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 200, 200, 50)];

// 拓展

NSString *strV = @"SaLaHeiYou,KuNiXiWa";

NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:strV];

// 修改颜色

// NSMakeRange(0, 4) 从哪个位置开始,数几个字符,设置他们的颜色

[attributeString addAttribute:NSForegroundColorAttributeName value:[UIColor yellowColor] range:NSMakeRange(0, 4)];

[attributeString addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(5, 2)];

[attributeString addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:NSMakeRange(8, 10)];

NSLog(@"%@",[UIFont familyNames]);

//Zapfino Menlo Baskerville Verdana

// 修改字体

[attributeString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Zapfino" size:20] range:NSMakeRange(0, 4)];

[attributeString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Menlo" size:30] range:NSMakeRange(5, 4)];

[attributeString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Baskerville" size:10] range:NSMakeRange(10, 4)];

label.attributedText = attributeString;

[self.view addSubview:label];

}

- (void)adutText

{

// 获取这些文本占用多大的空间

NSString *str = @"获取这些文本占用多大的空间 获取这些文本占用多大的空间 获取这些文本占用多大的空间";

// 根据文字的大小获取多大的label 可以显示

CGRect rect = [str boundingRectWithSize:CGSizeMake(300, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:30]} context:nil];

CGFloat labelH = rect.size.height;

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

// 0 的时候有多少行 显示多少行

label.numberOfLines = 0;

label.font = [UIFont systemFontOfSize:30];

label.backgroundColor = [UIColor redColor];

label.text = str;

[self.view addSubview:label];

}

- (void)addMetch

{

UILabel *label = (UILabel *)[self.view viewWithTag:100];

label.text = @"北京真好,吸雾霾不用交税";

}

3. UILable 的使用的更多相关文章

  1. UILable

    //UILable的大小自适应实例 UILabel *myLable = [[UILabel alloc] initWithFrame:CGRectMake(, , , )];//设定位置与大小 [m ...

  2. UI第一节—— UILable

    1.首先说说怎么创建UI程序,打开xcode,选择Create  a new Xcode project.看如下截图 2,接下来就蹦出一个和写OC应用差不多的界面,不多解释了 3.我给工程取得名字就叫 ...

  3. 完美解决 向UILable 文字最后插入N张图片,支持向限制行数的UILable 最后一行插入,多余文字显示...

    效果: ====直接上代码吧=== // // UILabel+StringFrame.h // QYER // // Created by qyer on 15/3/19. // Copyright ...

  4. UIlable 属性详用

    我的好朋友给我制定了一个新的学习方法,从新的看每个控件,去了解他的每个属性,方法来让自己对oc的认识更加充实 今天重新认识一下UILable 的属性lable的阴影设置: 阴影的偏移量是以lable中 ...

  5. iOS UILable高度自适应

    适用于iOS6以后 NSString *tip = @"UILable高度自适应,UILable高度自适应,UILable高度自适应"; UILabel label_2 = [[U ...

  6. IOS学习--UILable使用手册(20150120)

    第一步:创建一个UILable对象 UILabel *lable = [[UILabel alloc]initWithFrame:CGRectMake(, , , )]; 第二步:设置对象的各种属性 ...

  7. UILable:显示多种颜色的方法

    借用别人封装好的类库,用来显示同一个UILable上的多种颜色的字. 类库可以直接在次博客中下载,下载后别忘留言哦. 类库使用:主要用了CoreText里面的东西,所以在使用类库之前需要引用CoreT ...

  8. UILable  /  UITextField  /   UIButton

    // 获取屏幕大小的view UIView *contentView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; // ...

  9. 如何在UILable上添加点击事件?

    最近开始学习iOS开发,今天上来写第一个iOS笔记 昨天碰到一个需求,在UILable上添加点击事件,网上找了写资料,有人建议用透明的UIButton覆盖,有人建议写一个集成自UILable的类,扩展 ...

随机推荐

  1. 淘宝WAP版小BUG分析

    前几天发现的一个淘宝WAP版的小BUG,就是用桌面版chrome看的时候产品评价中的图片显示不出来,都是图裂了. 这是什么原因呢?图片为什么会显示不出来呢?淘宝的技术人员.测试人员不可能没发现啊.开启 ...

  2. 如何重复使用IEnumerable对象来枚举?

    我在2011年9月发表了一个问问,http://q.cnblogs.com/q/28679/. 没人理我. 自己看了一下,尝试自己解决: 原问题: MSDN: 在非泛型集合中,您可以在调用 Reset ...

  3. 备份Mysql数据库BAT脚本

    @echo off set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"c:cd C:\MySQL\bin\mysqldump -h 172.25. ...

  4. URL类

    java.net.URL类是对统一资源定位符(如http://www.lolcats.com)的抽象.它扩展了java.lang.Object,是一个final类.它采用策略模式,协议处理器(prot ...

  5. 非对称加密算法RSA

    RSA公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest).阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的.1987年首次公布,当时他们 ...

  6. 【Python】[面向对象高级编程] 使用__slots__,使用@property

    1.使用 __slots__    给实例绑定方法, >>> def set_age(self, age): # 定义一个函数作为实例方法 ... self.age = age .. ...

  7. MyBatis的foreach标签与SUM函数同时使用

    最近在项目中遇到一个,需要根据传入的存有id的list,计算值,再起别名 <if test="channelList != null and channelList.size()> ...

  8. localStorage与sessionStorage 的区别

    通过一枚页面计数器来区别localStorage与sessionStorage. 通过一个计数变量pageconut,每刷新页面,增加的是localStorage的数量,而sessionStorage ...

  9. 数据结构图文解析之:直接插入排序及其优化(二分插入排序)解析及C++实现

    0. 数据结构图文解析系列 数据结构系列文章 数据结构图文解析之:数组.单链表.双链表介绍及C++模板实现 数据结构图文解析之:栈的简介及C++模板实现 数据结构图文解析之:队列详解与C++模板实现 ...

  10. Linux 下EXT2文件系统 —— 如何将蚂蚁和大象优雅的装进冰箱里

    这一阵子真是偷懒,无时无刻不和自己身体中的懒癌做斗争.最终我还是被打败了,星期天两天几乎都是荒废过去的,在空闲的时候实际上我内心也是有点焦虑的,不知道去怎么度过这时间.学习吧又不想学习,看电视娱乐吧也 ...