iOS开发好文

1.搭建框架

2015-11-13  本文已影响0人  DavidFeng_swift

搭建项目框架

1.创建一个根视图 (window)
2 根视图上添加根控制器 tabbarController
3.创建4个tableviewController (nav)添加到tabbarController的childController中

按钮点击怎么触发的?

运行循环(runloop) 当没有事件时runloop休眠状态(省电),等待用户输入
一旦用户输入,UIApplicationHandleEventQueue

屏幕快照 2015-11-13 下午12.06.57.png
响应者链条:UIApplication发送事件找到keyWindow->UIcontrol(button)->UIApplication(按钮被点击了,告诉APP,并且按钮注册了监听)->target(告诉target被点击了,快点执行方法)->

@objc 能保证运行循环可以调用,走OC的消息机制,调用之前不再进行判断方法是否存在,和private联用,就能做到对方法的保护

@objc private func composeClick(){
    print(__FUNCTION__)
}

- 利用基类判断用户登录界面逻辑

新需求:增加用户登录界面

![屏幕快照 2015-11-13 下午12.23.57.png](https://img.haomeiwen.com/i1194542/1fe1cea857b72f0f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

loadview 创建实例化根视图,如果根视图不存在系统再次调用loadview

class BaseTableViewController: UITableViewController {
   var islogin = false
    override func loadView() {
        islogin ? super.loadView() : setupUI()
}
private func setupUI(){
    view = UIView()
    view.backgroundColor = UIColor.orangeColor()

      }
   }
上一篇 下一篇

猜你喜欢

热点阅读