iOS学习(UI)知识点整理

一、关于UILabel的使用介绍

1)概念:UILabel是一个继承自UIView的用于展示文本信息的控件

2)UI中所有的控件都继承自UIView 即UIView 是UI的祖宗类。

3)UILable的实例化方式 代码:

  UILabel *label=[[UILabel alloc]init]; //初始化UILabel
label.text=@"Hello,KingKong";//给label赋值文本内容
label.backgroundColor=[UIColor blackColor];//设置lable背景颜色为黑色
[label setTextColor:[UIColor whiteColor]];//设置文本字体颜色为白色
label.font=[UIFont systemFontOfSize:15.0];//设置label字体大小
abel.frame=CGRectMake(, , , );//设置label的x、y坐标以及长度 和高度
[self.window addSubview:label];//将初始化好的label装载到屏幕视图

4)视图颜色可以根据RGB类型设置,使用取色软件获取我们想要的颜色的RGB值可以方便的设置任意颜色类型
     为了使用方便我们可以 写一个专门的根据RGB设置颜色的宏定义方法 代码如下:

  #define ColorWithRGB(r,g,b) ([UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1])

5)我们还可通过NSMutableAttributedString 设置控件的样式 实例代码:

  UILabel *label=[[UILabel alloc]init]; //初始化UILabel
//初始化NSMutableAttributedString对象
NSMutableAttributedString *attribute=[[NSMutableAttributedString alloc]initWithString:text];
//根据范围设置字体大小
[attribute addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:] range:NSMakeRange(, )];
//根据范围设置背景颜色
[attribute addAttribute:NSBackgroundColorAttributeName value:[UIColor yellowColor] range:NSMakeRange(, )];
//根据范围设置字体颜色
[attribute addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(, )];
//根据label的宽度自动调节文字的字体大小
label.adjustsFontSizeToFitWidth = YES;
label.numberOfLines = ;//最大行数直到内容把label宽度高度填充完全
label.lineBreakMode = NSLineBreakByTruncatingTail;
//根据RGB设置文字颜色 此处为自定义方法
label.textColor = ColorWithRGB(, , );
//设置文字居中
//在iOS 7 之前UITextAlignmentCenter
label.textAlignment = NSTextAlignmentCenter;
//设置label的边框的宽度
label.layer.borderWidth = ;
//设置边框的颜色
label.layer.borderColor = label.textColor.CGColor;
//设置圆角 (当图像是正方形的时候,圆角值为图像一半的时候,图像变为一个圆)
label.layer.cornerRadius = ;
//label文字的阴影
label.shadowColor = [UIColor blackColor];
//laebl文字的偏移量
label.shadowOffset = CGSizeMake(, );
//将设置好的样式赋值给控件
label.attributedText=attribute;
//装载控件
[self.window addSubview:label];

6)当我们不使用iOS的Main.storyboard 而使用自定义的视图页面时需要 删除Target 下 Info选项的Main storyboard file base name
      否则会执行报错

7)当我们没法选择工程运行所需的iOS模拟器是 在Target的General下找到Deployment Target 项设置一下对应的iOS版本即可

8)iOS UI项目创建选项一般为 Single View Application 项

9)我们在初始化控件对象时必须先初始化视图 代码如下:

 //初始化视图对象  [UIScreen mainScreen].bounds  自动获取屏幕的尺寸
self.window = [[UIWindow alloc] initWithFrame:[UIScreenmainScreen].bounds];
//设置视图背景颜色
self.window.backgroundColor = [UIColor whiteColor];
//把当前的window设置成主window,并把它展示出来 注:此项必须设置否则无法展示视图
[self.window makeKeyAndVisible];

10)什么是Frame? Frame是坐标系,第一个参数是x坐标,第二个参数是y坐标,第三个参数是宽度,第四个参数是高度

 CGRect frame = CGRectMake(, , , );

11) 获取屏幕或视图的宽\高、x坐标,y坐标

 CGRect mainScreenFrame = [UIScreen mainScreen].bounds;
//获取屏幕宽度
CGFloat screenWidth1 = mainScreenFrame.size.width;
//获取视图的宽度
CGFloat screenWidth2 =CGRectGetWidth(self.view.frame);
//获取屏幕的高度
CGFloat screenHeight1 = mainScreenFrame.size.height;
//获取视图的高度
CGFloat screenHeight2 =CGRectGetHeight(self.view.frame);
//获取屏幕的X坐标
CGFloat startX = mainScreenFrame.origin.x;
//获取屏幕的Y坐标
CGFloat startY = mainScreenFrame.origin.y;

12)PCH文件说明:  PCH文件是iOS中的预编译文件可以在里面实现一些对头文件的引用以及宏定义方法,
        这样就可以实现一个全局引用 ,在添加PCH文件后需要在Target的 Build Settings 项下找到
        Prefix  Header  填写 $(SRCROOT)/Target名称/PCH文件名称.pch

13)创建控件的必要流程
  1、控件初始化
  2、设置Frame
  3、设置背景颜色
  4、将控件加载在某一视图上
  可选
  * 可否设置文字?
  * 可否设置文本颜色?
  * ……

14) 调试过程中如果我们要查看某个计算式/变量的结果值 可以在Console 区输入: po+计算式/变量 回车即可

iOS阶段学习第26天笔记(UILabel的介绍)的更多相关文章

  1. iOS阶段学习第29天笔记(UITextField的介绍)

    iOS学习(UI)知识点整理 一.关于UITextField的介绍 1)概念: UITextField 是用于接收用户输入的一个控件 2)UITextField  初始化实例代码: //创建一个UIt ...

  2. iOS阶段学习第28天笔记(UIView的介绍)

    iOS学习(UI)知识点整理 一.关于UIVIew 的介绍 1)概念:UIView 是用于装载并展示各类控件的大容器,是iOS中所有UI控件的基类 2)UIView  初始化实例代码 UIView * ...

  3. iOS阶段学习第27天笔记(UIButton-UIImageView的介绍)

    iOS学习(UI)知识点整理 一.关于UIButton的介绍 1)概念:UIButton 是一种常用的控件,通过点击触发相应的功能 2)UIButton 的几种常用的状态        1.UICon ...

  4. iOS阶段学习第35天笔记(Touch手势介绍)

    一.Touch手势 1.利用手势实现UIButton移动效果  实例代码 1) 创建一个继承自UIButton的类 MyButton.h  代码实现 #import <UIKit/UIKit.h ...

  5. iOS阶段学习第33天笔记(自定义标签栏(UITabBar)介绍)

    iOS学习(UI)知识点整理 一.自定义标签栏 1.方法一 单个创建标签栏 #import "AppDelegate.h" #import "SecondViewCont ...

  6. iOS阶段学习第30天笔记( UIViewController—Delegate(代理) )

    iOS学习(UI)知识点整理 一.UIViewController的介绍 1)概念:UIViewController 即视图控制器,用来管理和控制页面跳转的一个类 ,iOS里面采用了MVC的体系结构, ...

  7. iOS 阶段学习第11天笔记(OC基础知识)

    iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import  用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h, ...

  8. iOS 阶段学习第七天笔记(函数、递归)

     iOS学习(C语言)知识点整理笔记 一.函数 1)概念:具有特定功能的代码块的封装 2)函数的定义: 函数类型+函数名(形参列表) 函数类型 函数名(形参类型1  形参名1,形参类型2   形参名2 ...

  9. iOS阶段学习第四天笔记(循环)

    iOS学习(C语言)知识点整理笔记 一.分支结构 1.分支结构分为单分支 即:if( ){ } ;多分支 即:if( ){ }else{ }  两种 2.单分支 if表达式成立则执行{ }里的语句:双 ...

随机推荐

  1. [MFC] VS2013版本MFC工程移植到VC6.0上

    :VS虽号称“宇宙最强IDE”,但是有时候安装包太大,动不动就几个G:而且安装好之后也会多出很多几乎很难用到的部分,这对于那些处女座的人如何忍受!本文不是吐槽,而是给出一种在应急场景下,不用安装新版本 ...

  2. js限制input标签中只能输入中文

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. 据说每个大牛、小牛都应该有自己的库——JavaScript原生对象拓展

    在据说每个大牛.小牛都应该有自己的库——框架篇中我扬言要做个小牛,没想到一天没更新,小伙儿伴们就戏谑的问我,油哥是不是要太监了?其实事情是这个样子的,这不是太监的节奏,一是,关于写个自己的库的想法由来 ...

  4. Asp.net MVC 中Ajax的使用 [分享]

    文章转自 http://www.huiyoumi.wang/upload/forum.php?mod=viewthread&tid=75&extra= Asp.net MVC 抛弃了A ...

  5. 让Redis在你的系统中发挥更大作用的几点建议

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/105.html?1455868313 Redis在很多方面与其他数据库解决 ...

  6. 什么是P3O?

    P3O(Portfolio, Programme and Project Offices)项目组合.项目群和项目办公室资格认证. 是由英国商务部 OGC 于2008年10月28日发布的最新的最佳实践指 ...

  7. 20_学生选课数据库SQL语句练习题1

    25.查询95033班和95031班全体学生的记录. select * from STUDENT t,SCORE s where t.sclass=95033 or t.sclass=95031 26 ...

  8. Atitit. Atiposter 发帖机 新特性 poster new feature v11  .docx

    Atitit. Atiposter 发帖机 新特性 poster new feature v11  .docx 1.1.  版本历史1 2. 1. 未来版本规划2 2.1. V12版本规划2 2.2. ...

  9. HTML 5.1的新增特性

    相对于HTML5,HTML 5.1又带来以下改变,这些可以作为以后的参考. 新增的特性 <picture>和scrset属性允许响应式图片选择: <details>和<s ...

  10. BrowserSync前端调试工具使用

    上次介绍了一款DebugGap移动端调试工具DebugGap推荐.但是这几天使用了之后感觉还是有些不足,尤其是里面的调试工具虽然和Chrome里面的调试长的很像,但是多少有些不同,使用起来还是不太方便 ...