我正在尝试构建一个应用程序,支持OS2上的多个复杂系列,如模块化大型,实用大型,圆形小型等,每个都显示来自应用程序的各种有意义的信息。我知道复杂性与OS1在用户交互方面的一瞥相似,即在用户点击它时打开应用程序,在那里没有特殊的交互。
瞥了一眼,我能够根据目前的浏览内容对应用程序进行深层链接,但我正在寻找一种方法来解决这些问题。
所以我的问题是当用户点击我的应用程序的复杂功能时,我会得到任何类型的上下文信息,说明这个复杂功能被点击等。 我想是否可以在上下文中获得CLKComplication对象。
感谢任何帮助。
答案 0 :(得分:6)
在ClockKit/CLKDefines.h
中,您可以找到CLKLaunchedTimelineEntryDateKey
常数
但是,您无法定义自己的用户信息,以帮助您确定启动应用时要执行的操作。
来自 CLKComplicationDataSource Protocol Reference:
CLKLaunchedTimelineEntryDateKey
表示启动并发症的日期的键。此键的值是
NSDate
对象。当用户点击你的复杂功能时,ClockKit会将这个键包含在传递给扩展委托的handleUserActivity:
方法的字典中。在watchOS 2.0及更高版本中可用。
答案 1 :(得分:1)
由于您可以通过CLKLaunchedTimelineEntryDateKey
获取抽头时间表条目的日期,因此您可以通过制作"固定第二个"来获得并发症类型(家庭)。对于特定类型的时间表输入。
固定秒应由NSDateComponents
计算,然后转换为NSDate
,您可以传递给CLKComplicationTimelineEntry
。
例如,您可以指定modularSmall
条目的日期结束时间为10秒,但modularLarge
条目的日期结束时间为20秒。因此,点击日期9:41:10 AM的条目应为modularSmall
类型,日期为9:41:20的条目应为modularLarge
类型。