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. [蓝牙] 6、基于nRF51822的蓝牙心率计工程消息流Log分析(详细)

    开机初始化Log Log编号 函数名   所在文件名 000001: main ..\main.c 000002: timers_init ..\main.c 000003: gpiote_init ...

  2. JavaScript高级-定义函数(类)方法

    1.定义普通函数(常用) //1.普通函数 function defineFun1(p1, p2) { return p1 + p2; } 2.定义匿名函数(最常用) //2.匿名函数 var def ...

  3. Atitit  从 RGB 到 HSL 或 HSV 的转换

    Atitit  从 RGB 到 HSL 或 HSV 的转换 1.1. 从 RGB 到 HSL 或 HSV 的转换公式与原理1 1.2. public static HSV RGB2HSV(Color ...

  4. 将Windows系统编译的.NET Core程序发布到Ubuntu系统

    在可移植方面.NET Core应用程序分为两种,Portable application(便捷,需要目标机器安装.NET Core Runtime)和Self-contained applicatio ...

  5. chrome开发总结(交互/权限/存储)-爬虫

    chrome开发总结(交互/权限/存储)-爬虫 [TOC] 标签(空格分隔): 杂乱之地 经过一翻折腾.还是选择了chrome来做爬虫.主要是为了解决一些ajax加载的问题以及代理的问题. 1.chr ...

  6. ASP.NET MVC中使用FluentValidation验证实体

    1.FluentValidation介绍 FluentValidation是与ASP.NET DataAnnotataion Attribute验证实体不同的数据验证组件,提供了将实体与验证分离开来的 ...

  7. 【WP 8.1开发】文件选取器的使用方法

    在以往的WP7x/8.0开发中,我们使用选择器可以浏览并打开图片.音频.视频等一些特殊文件,在8.0 SDK中的运行时API(从Win 8 app中移植)尽管提供了Windows.Storage.Pi ...

  8. Microsoft Naive Bayes 算法——三国人物身份划分

    Microsoft朴素贝叶斯是SSAS中最简单的算法,通常用作理解数据基本分组的起点.这类处理的一般特征就是分类.这个算法之所以称为“朴素”,是因为所有属性的重要性是一样的,没有谁比谁更高.贝叶斯之名 ...

  9. 最近修改的几个小bug

    最近修改的几个 bug,问题不大,查找起来却几番周折,汇总起来如下. 1.诡异电话号码 客服邮件反馈,很多用户服务热线变成了“0371-45875487”.看到这问题的第一反映是可能因为程序某个地方有 ...

  10. PHP的学习--使用PhpDocumentor 2生成API文档

    官网地址:http://www.phpdoc.org/ 项目地址:https://github.com/phpDocumentor/phpDocumentor2 phpDocumentor 2是一个可 ...