iOS - UIKit 框架常用API

1、UIView

  • 设置大小、位置 frame
  • 使用栈的方式管理子view:addSubView,当子view在位置上有重叠,则优先显示栈顶view
  • 主要的生命周期
    init
    willMoveToSuperview
    didMoveToSuperview
    willMoveToWindow
    didMoveToWindow

2、UIViewController

  • 管理 view 层级
  • 自带一个默认 view,是所有子view的容器
  • 主要的生命周期
    init
    viewDidLoad
    viewWillAppear
    viewDidAppear
    viewWillDisappear
    viewDidDisappear
    Dealloc

3、UIWindow

1、iPhone应用程序通常只有一个窗口,表示为一个UIWindow类的实例
2、窗口显示出来之后,您很少需要再次引用它

UIWindow* aWindow = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

4、UIApplication

1、UIApplication类提供了对运行在IOS设备上的app集中控制和调度的机制;
2、每一个IOS app必须有一个而且只能有一个UIApplication或者其子类的实例;
3、当程序启动的时候,会调用UIApplicationMain函数,创建UIapplication单例,该单例在整个IOS系统中就是你的App的抽象
4、能够通过shareApplication方法来调用该单例
5、UIApplication还维护了当前App打开的窗口的列表。所以,你通过它能够取到你App中任何一个View
6、app实例还实现了一个delegate,接受各种各样程序运行时的事件,比如:程序启动、低内存警告、程序崩溃等等
7、能通过openURL:方法来接受和处理一个邮件或者图片文件。如一个以Email开头的URL将能够唤起Email程序来展示这个邮件
8、注册远程消息通知,执行程序级别的复位操作

5、UINavigationController

  • 通过栈管理单页面交互,如从主页进入详情页
  • 通常仅展示栈顶 Controller
  • Push/Pop 操作


6、UITabBarController

管理多个 UIViewController 的切换,通过点击底部UITabBar中的TabBar来展示对应的 UIViewController


UITabBarController.png

使用方式:

1、调用 setViewControllers 方法设置 ViewController
2、设置每个 ViewController 的 tabBarItem 的 title/image


UITabBarController

7、UITableView 和 UITableViewCell


8、UICollectionView




9、UIScrollView


10、基础控件

  • UILabel



  • UIImage



  • UIButton



    UIButton 继承自 UIControl ,拥有了点击等交互能力,对于一般的 View,并没有继承UIControl,要实现交互需要使用 UIGestureRecognizer

  • UIGestureRecognizer


  • UIAlertView
    该组件已被废弃,但可以从中学习组件的设计


  • WKWebview
    注:该组件并不属于 UIKit ,而是在单独的 WebKit 库里



11、动画



11、常见两种布局


12、常见模式

  • MVC
    UITabBarController: C
    tabBarItem: V
    tabBarItem.title/image: M
  • Delegate
    一对一模式


  • Target-Action


  • KVO
    一对多,类似观察者模式


参考

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

相关阅读更多精彩内容

友情链接更多精彩内容