不知不觉学习iOS已经半年了,自己还什么都不怎么会。之前花了35天的时间来学习OC,又花了13天的时间来对C语言查漏补缺,昨天开始学习UI知识,虽然之前已经学过一遍但是那都是浑沦吞枣,学习的一塌糊涂,有此前车之鉴,我决定每学完一天的课程便来归纳总结下,所学的内容以便后期复习会事半功倍,废话不多说,开始。
UI第01天:
主要是对Button的学习
1、IBAction作用是使函数具有连线的资格,属性前加IBOutlet使属性具有连线的资格。
2、所有的UI控件内存管理用weak,暂时不去追究为什么用。
3、退出键盘的方法:
① .谁调用谁退出,用这个方法: - resignFirstResponder
②.父控件和子控件退出键盘:(推荐)
- endEditing
4、Bundle identifer :应用的唯一标识
5、常用的三个属性:
frame: 位置、大小、左上角原点(相对于)
center: 中心所在的位置
bundles:自己的左上角(0,0)原点永远是0,只有大小
6、OC中不能直接修改一个“对象”的“结构体”的“属性”的“成员”,而结构体属性的成员可以修改,下面是一个示范:
- (IBAction)top
{
// 修改位置可以通过frame
// 在OC中,不允许直接修改"对象"的"结构体属性"的"成员"
// 但是允许修改"结构体属性"的"成员"
// self.iconButton.frame.origin.y -= 20;
// 如果要修改对象的结构体属性,需要三个步骤
// 1. 取出frame
CGRect frame = self.iconButton.frame;
// 2. 修改结构体的成员
frame.origin.y -=20;
// 3. 重新为对象的结构体属性赋值
self.iconButton.frame = frame;
}
// 枚举类型本质上就是整数,定义的时候,如果只指定了第一个数值,后续的数值会依次递增
// 枚举类型是解决魔法数字比较常用的手段
/**
1. 基本功能实现
2. 对代码优化:
尽量让重复的代码只出现一次
*/
11、关于监听事件:
// 第一种情况:没有发送者,没有事件
- (IBAction)login;
// 第二种情况:有发送者,没有事件
- (IBAction)login:(id)sender;
// 第三种情况:有发送者,有事件
- (IBAction)login:(id)sender forEvent:(UIEvent *)event;
*文本框有灰色提示: Placeholder -> 输入提示即可
*使密码暗文显示:勾选-Secure Text Entry
*快捷删除图标: Clear Button - Appears While Editing
: ②.