UIButton
UIButton,按钮,可以显示图片和文字,并在点击后,可以进行相应的操作的一个控件。
UIButton有三个状态:普通(normal)、高亮(highlighted)、失效(disabled);
其中normal状态是默认状态,highlighted是按下按钮但还没松开时的状态,失效状态其实就是不可用状态。在设置高亮状态时,把按钮的类型改成custom,即可选择。
如果同一个按钮共同使用一个方法时,可使用它的tag属性。
1 //指定button的位置和大小 2 3 button.frame = CGRectMake(10, 10, 75, 75);//CGRect是一个枚举,包括了CGPoint和CGSize. 4 5 //给button设置标签,用来辨别点击的是哪个button,常用在委托方法或者共用方法时。 6 7 button.tag = 0; 8 9 //定义按钮标题 10 11 [button setTitle:@"Button Title" forState:UIControlStateNormal];// 普通状态 12 [button setTitle:@"Button Title" forState:UIControlStateHighlighted];// 高亮状态 13 14 //给button添加点击触发的事件。 15 16 [button addTarget:selfaction:@selector(touchButton1:) forControlEvents :UIControl EventTouchUp Inside]; 17 18 //给button添加图片 19 20 [button setImage:[UIImageimageNamed:@"normal"] forState:UIControlStateNormal];// 普通状态下的图片,png格式可不加后缀,jpg等最好加上,以防无法识别。 21 22 //将button加入视图当中 23 24 [self.view addSubview:button];
懒加载
所谓懒加载,也称为延迟加载,其实就是getter方法,即在需要的时候才加载(效率低,占用内存小)。使用时要注意先判断是否已经有了,如果没有那么再去进行实例化。
使用懒加载的好处:
(1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强
(2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合
1 #pragma mark - 图片信息数组,(懒加载) 2 - (NSArray *)array{ 3 // 判断是否已经加载了 4 if (_array == nil) { 5 NSString *path = [[NSBundle mainBundle] pathForResource:@"images" ofType:@"plist"];//获得图片资源的路径 6 _array = [NSArray arrayWithContentsOfFile:path];//获得图片资源的内容 7 } 8 return _array; 9 }