UI常见错误

storyboard文件的认识

  • 用来描述软件界面
  • 默认情况下,程序一启动就会加载Main.storyboard
  • 加载storyboard时,会首先创建和显示箭头所指的控制器界面

IBAction和IBOutlet

  • IBAction:
    • 本质就是void
    • 能让方法具备连线的功能
  • IBOutlet
    • 能让属性具备连线的功能

storyboard连线容易出现的问题

  • 连接的方法代码被删掉,但是连线没有去掉
    • 可能会出现方法找不到错误
    • unrecognized selector sent to instance
  • 连接的属性代码被删掉,但是连线没有去掉
    • setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key

UIViewController(控制器)的认识

  • 一个控制器负责管理一个大界面
  • 控制器负责界面的创建、事件处理等

类扩展

  • 格式
@interface 类名()
/** 属性、方法的声明 */
@end
  • 作用
    • 为某个类增加额外的属性和方法声明
    • 可以写在.h和.m文件中

项目属性

  • Product Name
    • 软件名称、产品名称、项目名称
  • Organization Name
    • 公司名称、组织名称
  • Organization Identifier
    • 公司的唯一标识
    • 一般是公司域名的反写,比如com.520it
  • Bundle Identifier
    • 软件的唯一标识
    • 一般是Organization Identifier + Product Name

UIView的常见属性

  • NSArray *subviews
    • 所有的子控件
    • 数组元素的顺序决定着子控件的显示层级顺序(下标越大的,越显示在上面)

UIView的常见方法

  • addSubview:
    • 添加一个子控件
    • 使用这个方法添加的子控件会被塞到subviews数组的最后面
  • 可以使用下面的方法调整子控件在subview数组中的顺序
// 将子控件view插入到subviews数组的index位置
- (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;

// 将子控件view显示到子控件siblingSubview的下面
- (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;
// 将子控件view显示到子控件siblingSubview的上面
- (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;

// 将子控件view放到数组的最后面,显示在最上面
- (void)bringSubviewToFront:(UIView *)view;
// 将子控件view放到数组的最前面,显示在最下面
- (void)sendSubviewToBack:(UIView *)view;

iOS技术成长群:255032637 有愿意的小伙伴可以长期学习共勉!

你可能感兴趣的:(UI常见错误)