基础控件

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
  • 按钮的样式
    • UIButton自带了很多种不同的样式
      // 用代码创建按钮的同时指定按钮样式
      UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; 
      UIButtonTypeCustom// 无类型,按钮的内容需要自定义
      UIButtonTypeDetailDisclosureUIButtonTypeInfoLightUIButtonTypeInfoDarkUIButtonTypeContactAdd
  • 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的文件名不能叫做“info”、“Info”之类的
    • 添加plist、图片等文件资源的时候,一定要勾选“Add to targets:”里的第一个选项

results matching ""

    No results matching ""