1.iOS决定在iPhone还是在Apple Watch上显示通知。
2.系统提供了默认的界面来显示来自通知的信息提示,app可以自定义通知界面。
3.本地或者远程通知到达,显示short-look界面。
Short-Look界面:
1.用户第一次查看通知的时候,系统会显示short-look界面;
2.不可滚动而且不能自定义;
3.显示应用程序的icon,名称,标题;
4.用户继续查看通知的话,系统从Short-look界面很快转向long-look界面;
Short-Look界面标题(title)
1.标题提供了通知的简短的说明;
2.本地通知的标题:用NSLocalNotification的alertTitle属性;
3.远程通知的标题:在payload中,alert字典中key为title;
Long-look界面:
1.可以滚动的界面,显示了通知的内容和任何相关的按钮;
2.默认的界面包括app icon、通知标题、信息提示;
3.通知界面分为三个部分:sash(顶部)、content area(中间部分)、bottom area(底部);
Long -Look界面三个部分:
1.Sash:包括app icon和名称,默认为透明的,但是可以在自定义的通知界面设置颜色;
2.Content area:显示通知的细节。对于自定义的界面,可以决定这部分的位置;
3.Bottom area:包含一个dismiss按钮(系统提供的)和其他的按钮;
为通知添加按钮:
1.Apple Watch利用iOS应用注册的交互通知界面来显示按钮;
2.在iOS8及更高的版本中,用UIUserNotificatonSetting对象注册显示的通知对话框的类型;
3.最多展示4个自定义操作按钮;
按钮响应点击:
1.UIUserNotificationAction对象里的信息决定如何处理点击操作;
2.按钮动作可以在前台,也可以在后台处理,并且是否附带用户认证信息是可选的;
3.前台处理与后台处理是有区别的:
前台:启动WatchKit app,然后将点击的按钮的ID传递给主界面控制器的handleActionWithIdentifier:forRemoteNotification方法或者handleActionWithIdentifier:forLocalNotification:方法。
自定义通知界面:
1.自定义long-look界面包括两个独立的界面:静态界面、动态界面;
2.静态界面(Static Interface):显示通知的提示信息,设计时配置的静态图片和文本,是必需的。
3.动态界面(Dynamic Interface):自定义内容样式,为可选择的界面。
4.静态场景和动态场景关联相同的通知类型,该通知类型指定关联静态界面的通知类别。
加载通知界面:
1.通知抵达,WatchKit选择显示动态还是静态界面。
2.显示静态界面的条件:动态界面不可用,没有足够的电力保证显示动态界面,明确指出不能用动态界面。
配置自定义界面的类目(category)
1.通过category区别不同的通知界面;
2.每个通知界面必须有一个赋值的通知类目,WatchKit通过类目值决定加载的场景;
3.通知的payload中包含category关键字,值为你所定义的字符串。
4.如果没有category字符串的话,AppleWatch显示类目为default通知界面;
github主页:https://github.com/chenyufeng1991 。欢迎大家访问!