项目总结-4

特定构造方法

  • 什么样的方法是特定构造方法?
    • 方法声明后面带有NS_DESIGNATED_INITIALIZER这个宏
  • 子类如果重写了父类的特定构造方法,那么必须使用super调用父类的特定构造方法.例如initWithFrame:必须要调用[super initWithFrame:frame],如果不调用,编译就会报警告
  • NS_DESIGNATED_INITIALIZERNS_REQUIRES_SUPER的区别
    • NS_DESIGNATED_INITIALIZER必须用super调用父类的一个方法,这个方法可以是与子类中不同名称的方法,调用后编译就不会报警告
    • NS_REQUIRES_SUPER则必须要调用父类中同名的方法

按钮的状态总结

 1.UIControlStateNormal
 1> 除开UIControlStateHighlighted、UIControlStateDisabled、UIControlStateSelected以外的其他情况,都是normal状态
 2> 这种状态下的按钮【可以】接收点击事件

 2.UIControlStateHighlighted
 1> 【当按住按钮不松开】或者【highlighted = YES】时就能达到这种状态
 2> 这种状态下的按钮【可以】接收点击事件

 3.UIControlStateDisabled
 1> 【button.enabled = NO】时就能达到这种状态
 2> 这种状态下的按钮【无法】接收点击事件

 4.UIControlStateSelected
 1> 【button.selected = YES】时就能达到这种状态
 2> 这种状态下的按钮【可以】接收点击事件

 二、让按钮无法点击的2种方法
 1> button.enabled = NO;
 *【会】进入UIControlStateDisabled状态

 2> button.userInteractionEnabled = NO;
 *【不会】进入UIControlStateDisabled状态,继续保持当前状态

彻底搞懂TableView的contentSize,contentOffset和contentInset

  • 什么是TableView的内容(content)?
    • 1.cell
    • 2.tableHeaderView 和 tableFooterView
    • 3.sectionHeader 和 sectionFooter
  • contentSize.height:指内容的高度
  • contentOffset.y:指内容的偏移量(tableView的frame的顶部内容顶部的差值,具体是哪个减哪个我忘了)
  • contentInset:内容周围的间距(内边距)
  • frame
    • frame.size.height:tableView可视范围矩形框的高度
    • frame:以父控件内容左上角为坐标原点
  • 10种情况下分析TableView的contentSize,contentOffset和contentInset

1~~~~~~~~~~~~~~~~~~~~~~~~

2~~~~~~~~~~~~~~~~~~~~~~~~

3~~~~~~~~~~~~~~~~~~~~~~~~

4~~~~~~~~~~~~~~~~~~~~~~~~

5~~~~~~~~~~~~~~~~~~~~~~~~

6~~~~~~~~~~~~~~~~~~~~~~~~

7~~~~~~~~~~~~~~~~~~~~~~~~

8~~~~~~~~~~~~~~~~~~~~~~~~

9~~~~~~~~~~~~~~~~~~~~~~~~

10~~~~~~~~~~~~~~~~~~~~~~~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容