App Watch 简单入门

作者: Mg明明就是你 | 来源:发表于2016-07-31 09:22 被阅读249次
    • github

    项目 简介
    MGDS_Swif 逗视视频直播
    MGMiaoBo 喵播视频直播
    MGDYZB 斗鱼视频直播
    MGDemo n多小功能合集
    MGBaisi 高度仿写百思
    MGSinaWeibo 高度仿写Sina
    MGLoveFreshBeen 一款电商App
    MGWeChat 小部分实现微信功能
    MGTrasitionPractice 自定义转场练习
    DBFMDemo 豆瓣电台
    MGPlayer 一个播放视频的Demo
    MGCollectionView 环形图片排布以及花瓣形排布
    MGPuBuLiuDemo 瀑布流--商品展
    MGSlideViewDemo 一个简单点的侧滑效果,仿QQ侧滑
    MyResume 一个展示自己个人简历的Demo
    GoodBookDemo 好书
    Snip20161026_15.png
    Snip20161026_16.png
    Snip20161026_35.png 逗视介绍1.gif
    逗视介绍2.gif

    一、创建项目

    - 最简单的hello world
    - 项目结构
    
        + Extension:位于用户的iPhone安装了对应的App上,包含我们需要实现的代码逻辑和其他的资源文件
        + watch app:目前只允许包含storyboard文件和resource文件
        + InterfaceController:当前界面的控制器
            - 与UIViewController的区别是:InterfaceController最终`继承的是NSObject`
            - InterfaceController`不会管理Watch APP的应用界面`
            - Watch APP的`界面是直接由Watch Kit来管理`
        + NotificationController:当前APP的通知
    

    二、apple Watch的生命周期方法

    • apple Watch启动原理
      • 用户点击Watch APP后,与Watch匹配的iPhone会启动extension,然后与Watch建立连接,产生通信
    • NotificationController:
      • Watch OS提供了默认的通知显示,当用户点击通知进入APP时,就会调用以下两个方法
        - (void)handleActionWithIdentifier:(NSString *)identifier forLocalNotification:(UILocalNotification *)localNotification
    {
        
    }
    
    - (void)handleActionWithIdentifier:(NSString *)identifier forRemoteNotification:(NSDictionary *)remoteNotification
    {
        
    }
    - 通过这两个方法获得通知的消息,跳转到目标界面
    
    • 在NotificationController中可以实现以下两个方法
    - (void)didReceiveLocalNotification:(UILocalNotification *)localNotification withCompletion:(void (^)(WKUserNotificationInterfaceType))completionHandler {
      
    }
    - (void)didReceiveRemoteNotification:(NSDictionary *)remoteNotification withCompletion:(void (^)(WKUserNotificationInterfaceType))completionHandler {
        
    }
    - 获得通知内容,并设置处理完成的回调Block```
        - `init`:用来初始化interface Controller
        - `awakeWithContext`:类似UIViewController中的viewDidLoad方法,用来配置interface Controller
        - `willActivity`:界面将要显示给用户时会被调用,主要用来对试图进行一些小的调整,大规模的初始化还是放在init和awakeWithContext
        - `didDeactivate`:用来清空界面,程序进入不活动状态,可以用它来终止Timer或者来停止动画,这个方法不能再对界面进行操作
        - command + L锁定屏幕
    ![生命周期](https://img.haomeiwen.com/i1429890/40caa2f37bdd9c94.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ***
    
    ###三、控制器
    * 控制器的跳转
        - 使用storyboard
        - 使用代码的方式
    ![](https://img.haomeiwen.com/i1429890/80a1ff6335ccef9b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    - push
    ![Snip20160730_25.png](https://img.haomeiwen.com/i1429890/aaab2e2b42871a75.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    - model
    ![Snip20160730_26.png](https://img.haomeiwen.com/i1429890/5fe74ad93ca542e3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ***
    
    #四、控件的基本使用
    * 标签
        - 属性:
            + installed:是否安装这个控件
            + horizontal:水平方向如何显示
            + vertical:垂直方向如何显示
            + size:
                + 自适应自身的宽高
                + 与当前的界面的等宽高
                + 设置固定宽高
            + adjustment:调整控件的值
            
    * 按钮
        - 改变label的文字
    * 图片
        - 显示一张图片
    
    - #####控件的布局
      * group:一组是一个容器,它管理着在你的界面的其他视图的布局。可以指定背景颜色或图像来显示后面的组中的项目。
    
    ###1.WKInterfaceLabe
    ![](https://img.haomeiwen.com/i1429890/038f89007a64d972.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![WKInterfaceLabe](https://img.haomeiwen.com/i1429890/acfdd8b3dcf78d12.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###2.WKInterfaceButton
    ![WKInterfaceButton](https://img.haomeiwen.com/i1429890/1c1c6c308d27c326.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###3.WKInterfaceImageView
    ![](https://img.haomeiwen.com/i1429890/8a25d6e69b7e8781.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![WKInterfaceImageView](https://img.haomeiwen.com/i1429890/2009022512bff310.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###4.nextPage
    ![nextPage](https://img.haomeiwen.com/i1429890/b5420aa513232db0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###5.WKInterfaceDevice
    ![](https://img.haomeiwen.com/i1429890/d376b5b245470881.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![WKInterfaceDevice](https://img.haomeiwen.com/i1429890/ae4c96fd6d4e17cf.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###6.数据共享
    ![](https://img.haomeiwen.com/i1429890/30fc128f586a7ddc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![](https://img.haomeiwen.com/i1429890/90b4b576db67aae8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![](https://img.haomeiwen.com/i1429890/48666900b24a0734.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ![数据共享](https://img.haomeiwen.com/i1429890/69d2926b41ceff3c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###7.pickerView
    ![pickerView](https://img.haomeiwen.com/i1429890/761237d9cb551560.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    
    ###8.tableView
    ![tableView](https://img.haomeiwen.com/i1429890/6d718cea82dd2c70.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###9.AlertView
    ![AlertView](https://img.haomeiwen.com/i1429890/a06dbbd628ba11e9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    ###10.文本框的快速回复
    ![文本框的快速回复](https://img.haomeiwen.com/i1429890/9766a35e1cb41044.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    相关文章

      网友评论

        本文标题:App Watch 简单入门

        本文链接:https://www.haomeiwen.com/subject/zibtsttx.html