1.1-简介

  • WKInterfaceController是我们开发Watch App的核心类,它的地位和之前使用的UIViewController一样。

  • 每一个Watch App构建时,至少需要在Storyboard上设置一个WKInterfaceController实例作为程序入口。我们可以在Storyboard上使用Main Entry Point设置。

  • 当用户launch了Watch App时,Watch OS 会开始加载程序中的Storyboard。我们在Storyboard中为每一个WKInterfaceController设置的响应事件,会在用户触发时在WatchKit Extension中响应。我们可以像以前一样push, pop, present 目标WKInterfaceController。

1.2-生命周期

0601.png

1.3-框架

  • (1)当Watch OS加载App中的Storyboard时,iPhone端也会开始加载对应的WatchKit Extension。

  • (2)当Watch OS开始初始化我们Watch App的Storyboard中的UI时,iPhone端WatchKit Extension会生成对应的WKInterfaceController,并且响应initWithContext:方法。

  • (3)当Watch OS显示当前加载的UI时,WatchKit Extension中对应的WKInterfaceController响应willActivate方法。

  • (4)当用户切换页面或者停止使用时,WatchKit Extension中对应的WKInterfaceController响应didDeactivate方法。

0603.png

1.4-使用

  • 从上图可知这三个API,对应了Watch OS加载一个视图控制器的三个状态。我们在自己的WKInterfaceController类中,应该实现这三个API用来处理不同的情况:

    • initWithContext: 我们可以在这里加载数据或者更新在StoryBoard中当前Controller添加的interface objects。
    • willActivate 我们可以在这里更新interface objects或者处理其他事件
    • didDeactivate 我们应该在这里清理task或者数据。在这里更新interface objects将会被系统忽略。

WatchOS系统开发大全(5)-WKInterfaceController的生命周期相关推荐

  1. WatchOS系统开发大全(4)-WatchApp生命周期

    WatchOSAPP生命周期 1.1-简介 WatchOS2.0之后的工程与WatchOS1.0的工程有什么不同之处? 创建的方式不同 2.0的工程多了一个文件:ExtensionDelegate 0 ...

  2. WatchOS系统开发大全(1)-AppleWatch背景介绍

    AppleWatch背景 前言 苹果从2014年推出AppleWatch设备至今已经三个年头,笔者作为国内第一批AppleWatch的用户(购买的是2014年3月份预定的第一代苹果手表)以及第一批Wa ...

  3. WatchOS系统开发大全(8)-WKInterfaceGroup

    1.1-简介 1.1.1 WatchApp的storyboard中控件的布局规则 一行只能显示一个控件,无法将一个控件拖到另一个控件的左边或者右边. 1.1.2 如果想让一行显示多个控件,应该怎么办? ...

  4. WatchOS系统开发大全(3)-创建第一个WatchApp工程

    创建第一个WatchApp工程 1.1-WatchOS2.0之后工程的创建 (1)点开xcode新建一个工程,选择Watch OS直接建一个Watch应用,点击next输入项目名称进行下一步 因为Wa ...

  5. WatchOS系统开发大全(2)-WatchApp运行原理

    WatchOS与iPhone交互框架 1.1-简介 我们都知道,一个App主要由两部分组成,一个是界面UI部分,一个是代码逻辑部分 在Wach OS1.0的Watch App中,界面UI是编译在App ...

  6. WatchOS系统开发大全(7)-WKInterfaceImage

    WKInterfaceImage 1.1-简介 WKInterfaceImage与iOS的UIKit框架中UIImageView一样,是一个显示图片的控件. 1.2-API介绍 WKInterface ...

  7. WatchOS系统开发大全(6)-WKInterfaceLabel

    WKInterfaceLabel 1.1-简介 WKInterfaceLabel与iOS的UIKit框架中UILabel一样,是一个显示文本的控件. 1.2-API介绍 WKInterfaceLabe ...

  8. 【Android 应用开发】UI绘制流程 ( 生命周期机制 | 布局加载机制 | UI 绘制流程 | 布局测量 | 布局摆放 | 组件绘制 | 瀑布流布局案例 )

    文章目录 一. 博客相关资料 及 下载地址 1. 代码查看方法 ( ① 直接获取代码 | ② JAR 包替换 ) 2. 本博客涉及到的源码查看说明 二. Activity 生命周期回调机制 1. An ...

  9. iOS初级开发学习笔记:APP生命周期的学习总结

    我们平常使用APP时,一般人都会知道有:简单的正在使用状态:通过home键等方式离开应用,但是不关闭应用,即后台状态:以及调出后台程序管理后向上滑动将应用"杀死",三种状态.而我们 ...

最新文章

  1. Swift 圆环进度条
  2. 何恺明团队最新力作:超越EfficientNet,GPU上提速5倍|CVPR 2020
  3. sybase笔记 2762错误
  4. python程序员工作怎样-12个Python程序员面试必备问题与答案(小结)
  5. 阿里巴巴超大规模 Kubernetes 基础设施运维体系
  6. php正则表达式匹配img中任意属性的方法
  7. 云原生时代的“精益实践”:企业效能提升10倍“杀手锏
  8. 线性表(代码、分析、汇编)
  9. 【从入门到放弃-ZooKeeper】ZooKeeper实战-分布式队列
  10. NLP算法求建议 | 腾讯 VS 美团
  11. 高中生物神经系统的组成,初中生物神经系统考题
  12. 用matlab绘制动态心形图
  13. excel中条形图的条目排序与逆序
  14. 寻找全排列的下一个数
  15. 盒子模型(标准盒子和怪异盒子)
  16. ubuntu18.04安装opencv viz模块
  17. 在QQ通讯录之前拦截短信
  18. Eclipse3.5+mtj1.0+WTK2.5配置J2ME开发环境
  19. 【Java算法之dfs 与bfs详解】
  20. 自动化办公系统(整理中)

热门文章

  1. java web netty_基于Netty的非Servlet规范 JavaWeb框架及高性能 Java服务器
  2. 高级php程序员面试题2019,2019最新PHP模拟面试题及答案
  3. phantomjsjava_Java利用Phantomjs实现生成图片的功能
  4. 三十八、Java集合中的ConcurrentHashMap
  5. 八十八、Webpack打包工具
  6. leetcode 刷题142 143
  7. 目标检测Workshop | COCO三连冠带你探索检测新世界
  8. 推翻Hinton NeurIPS论文结论!审稿人评价:该文章在标签平滑和知识蒸馏的关系上取得了重大突破!...
  9. 我们做了一个医疗版MNIST数据集,发现常见AutoML算法没那么好用
  10. 【面试必备】通俗易懂的XGBoost、Transformer、BERT、水波网络原理解析