2015年07月03日第三天笔记

2015年07月03日12:09:46
细节归纳

1.获取屏幕的宽度
CGFloat screenW = self.view.frame.size.width;
2.求边距
(屏幕的宽度-列数*app的宽度)/ (列数+1)
3.用fame初始化一个UIView对象
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(x,y,w,h)];
4.UIView对象的背景颜色:.backgroundColor
5.在View控制器中 把子控件添加的主屏幕
[self.view addSubview:view];
6.坐标和长宽的类型是CGFloat类型那个

7.第n个app的X坐标(n从0开始)
边距的宽度+(边距宽度+app宽度) *(n%列数)

8.第n个app的Y坐标(n从0开始)
固定高度+边距高度+(边距高度+app高度)* (n/列数)

2015年07月03日12:22:07 字典数组存储数据相关

9.单个记录数据可以存放在字典中,多个记录就有多个字典,多个字典可以放在一个数组中;数据用数组保存
思路归纳
10.关于9 数据存放的实现步骤 === 放在ViewdidLoad方法里区操作
1)新建一个字典
2)将一个记录数据按键值存放在字典中
3)循环做1)2)步骤 直到 所有记录放在n个字典中
4)定义一个数组,将所有字典放进数组
细节归纳
11.关于10取数据
1)一个数组元素就是一个字典类型的对象
2)通过字典取值方法:dict[@“icon”];取出

2015年07月03日12:22:29

12.把子控件放进父控件

[父控件 addSubview:子控件];

13.初始化一个控件

控件类 控件A = [[控件类 alloc] initWithFrame:CGRectMake(x,y,h,w)];

14.UIImageView 对象有个 image 存放 一个 UIImage 对象 来设置图片

15.设置Label的文本对齐方式:[label setTextAlignment:NSTextAlignmentCenter];

16.设置Label的文本 label.text 设置颜字体 lebel.font = [UIFont systemFontOfSize:13];

17.创建一个按钮
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
背景图片 [button setBackgroundImage: forState:];
设置标题 [button setTitle: forState:];
设置位置和尺寸 button.frame;

18.关于9 数据存放的实现步骤 === 为了更好的管理放在plist文件中
1)创建plist文件
2)创建数组,创建字典 ,存放数据
3)取数据1)找到这个文件,2)根据这个文件生成数组 3)这时数组元素就是一个字典记录数据

19.18.不能避免最终用字典取数据,所以诞生了模型类

20.在模型类里封装用字典取数据,和加载数据的操作

21.然后再控制器里.引入模型类就可以这个类的属性访问数据了。

2015年07月03日18:50:49 根据老师讲的应用管理程序总结

思路分析

1.显示View
1)边距宽度,边距高度,app宽度,app高度,状态栏固定高度,屏幕的宽度

2)每个应用布局,看做一个大View控件,利用xib文件进行封装,参考xib文件,利用其数组中的控件,新建一个控件类

控件类
1)控件1;控件2;……(.m文件中类别()中);模型类对象(.h文件中)
2)重写模型属性的setter方法,给属性属性赋值,给子控件赋值;
3)控件的监听方法;
4)加载xib的控件类方法B,返回一个控件类对象

2.数据Mode
每个数据属性一致,只是数据不同,参考plist文件,利用其数组中的字典,统一建模型类,这样一个应用就是一个模型类对象

模型类
1)属性1;属性2;……..
2)字典转模型的对象方法;
3)字典转模型的类方法;
4)加载,遍历plist的数据,将字典转化为模型类A

3.调度Controller
1)定义各种宽度,坐标,高度

2)加载数据,定义一个模型数组属性来盛放
实际加载过程由模型类去封装,控制器只需要利用模型类调用接口A

3) 遍历数据,生成子控件,添加到主屏幕
子控件的生成,利用自定义子控件类调用接口B
利用子控件自带fame属性对象设置子控件的位置大小
利用子控件自定义的模型属性设置子控件的数据

4.下载按钮的思路
1)禁用
2)改变按钮名字
3)弹窗

5.弹窗
1)考虑弹窗后,用户不能再交互;弹窗后,当前按钮显示的标题
2)弹窗的表现形式:用Label的动画变化效果
3)Label的动画:延迟一秒消失;消失后,让用户可以再交互

6.当在一个父控件中展示多个相同控件时要考虑的
1)该控件的宽高
2)每行显示多少列
3) 控件的左右边距,当每行显示的列不是均分的时候,要考虑特殊的最左边距

7.遍历生成子控件要考虑

细节归纳
1.commond + 选中的代码 可以拖入代码块,以备下次使用
2.加载Xib数据的方法

AppView * appView = [[NSBundle mainBundle] loadNibNamed:@”AppView” owner:nil options:nil].lastObject;

3.用bounds时,要事先确定该控件的center
4.用frame时,先确定该控件的大小,然后通过大小计算与主屏的位置
5.设置文本对齐格式 textAlignment
6.设置控件透明度 alpha
7.制作控件的圆角效果 layer.cornerRadius = 10; clipsToBounds
8.添加带回调函数的动画,可以嵌套调用

[
UIView 
animateWithDuartion:1 
animations^{} 
completion:^(BOOL finished){}]
;

9.添加不带回调函数的动画

[
UIView 
animateWithDuartion:1 
animations^{}
];

10.添加带延迟,同时有样式的动画

[
UIView
animateWithDuration:<#(NSTimeInterval)#>
delay:<#(NSTimeInterval)#>
options:<#(UIViewKeyframeAnimationOptions)#>//UIViewAnimationOptionCurveLinear
animations:<#^(void)animations#>
completion:<#^(BOOL finished)completion#>
];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值