基础控件
UIKit框架
- UIKit框架提供了非常多的UI控件,但并不是每一个都很常用,有些控件可能1年内都用不上,有些控件天天用,比如UIButton、UILabel、UIImageView、UITableView等等
- 什么是UIImageView
- UIImageView极其常用,功能比较专一:显示图片
- 一个UIImage对象代表一张图片,一般通过imageNamed:方法就可以通过文件名加载项目中的图片
UIImage *image = [UIImage imageNamed:@"lufy"];
什么是UILabel
- UILabel极其常用,功能比较专一:显示文字
- 如果想让UILabel自动换行,设置Lines为0即可
- UILabel的基本设置
// 显示的文字 @property(nonatomic,copy) NSString *text; // 字体 @property(nonatomic,retain) UIFont *font; // 文字颜色 @property(nonatomic,retain) UIColor *textColor; // 对齐模式(比如左对齐、居中对齐、右对齐) @property(nonatomic) NSTextAlignment textAlignment; 说道UILabel就不得不提UIFont,因为要设置字体大小及字体样式必须使用它来完成
- UIFont代表字体,常见创建方法有以下几个:
// 系统默认字体大小 + (UIFont *)systemFontOfSize:(CGFloat)fontSize; // 粗体 + (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize; // 斜体 + (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize;
- 什么是UIButton
- 一个非常重要的UI控件---UIButton,俗称“按钮”
- 一般情况下,点击某个控件后,会做出相应反应的都是按钮
- 按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片和文字的位置
- UIButton的状态
- normal(普通状态)
- 默认情况下为此状态
- 对应的枚举常量:UIControlStateNormal
- highlighted(高亮状态)
- 按钮被按下去的时候(手指还未松开)
- 对应的枚举常量:UIControlStateHighlighted
- disabled(失效状态,不可用状态)
- 如果enabled属性为NO,就是处于disable状态,代表按钮不可以被点击
- 对应的枚举常量:UIControlStateDisabled
- normal(普通状态)
- 按钮的样式
- UIButton自带了很多种不同的样式
// 用代码创建按钮的同时指定按钮样式 UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; UIButtonTypeCustom:// 无类型,按钮的内容需要自定义 UIButtonTypeDetailDisclosure: UIButtonTypeInfoLight: UIButtonTypeInfoDark: UIButtonTypeContactAdd:
- UIButton自带了很多种不同的样式
- UIButton的常见设置
// 设置按钮的文字 - (void)setTitle:(NSString *)title forState:(UIControlState)state; // 设置按钮的文字颜色 - (void)setTitleColor:(UIColor *)color forState:(UIControlState)state; // 设置按钮内部的小图片 - (void)setImage:(UIImage *)image forState:(UIControlState)state; // 设置按钮的背景图片 - (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state; // 设置按钮的文字字体(需要拿到按钮内部的label来设置) btn.titleLabel.font = [UIFont systemFontOfSize:13]; // 获得按钮的文字 - (NSString *)titleForState:(UIControlState)state; // 获得按钮的文字颜色 - (UIColor *)titleColorForState:(UIControlState)state; // 获得按钮内部的小图片 - (UIImage *)imageForState:(UIControlState)state; // 获得按钮的背景图片 - (UIImage *)backgroundImageForState:(UIControlState)state; - 其他控件 这里暂时先学习上面的三个控件,其他控件待用到的时候再做学习笔记。
- 什么是Plist文件
- 直接将数据直接写在代码里面,不是一种合理的做法。如果数据经常改,就要经常翻开对应的代码进行修改,造成代码扩展性低;
- 因此,可以考虑将经常变的数据放在文件中进行存储,程序启动后从文件中读取最新的数据。如果要变动数据,直接修改数据文件即可,不用修改代码
- 一般可以使用属性列表文件存储NSArray或者NSDictionary之类的数据,这种“属性列表文件”的扩展名是plist,因此也称为“plist文件”
- 解析Plist文件
- 下面是通过代码来解析Plist文件中的数据
// 获得Plist文件的全路径 NSBundle *bundle = [NSBundle mainBundle]; NSString *path = [bundle pathForResource:@"shops" ofType:@"plist"]; // 加载plist文件 _shops = [NSArray arrayWithContentsOfFile:path];
- 下面是通过代码来解析Plist文件中的数据
- Plist的使用注意
- plist的文件名不能叫做“info”、“Info”之类的
- 添加plist、图片等文件资源的时候,一定要勾选“Add to targets:”里的第一个选项