iOS16 App Shortcuts:如何为SiriTipView设置Box实体示例参数
解决iOS 16 SiriTipView实体占位符填充问题
要让SiriTipView显示带具体Box实体示例的提示,你需要通过IntentParameter.value(_:)方法包装现有实体,再传入意图初始化器,具体步骤如下:
构造Box实体示例
从你的用户数据中取出一个已存在的Box实体实例(如果是自定义Intent实体,确保它已正确实现Identifiable并包含display属性):// 示例:构造一个名为"药品盒"的Box实体 let sampleBox = BoxAppEntity(identifier: "sample_box_001", display: "药品盒")用IntentParameter包装实体
使用IntentParameter的.value枚举case来包装你的实体示例,这会告诉SiriTipView用该实体填充占位符:let boxParameter = IntentParameter<BoxAppEntity>.value(sampleBox)初始化带参数的意图并创建SiriTipView
将包装后的参数传入AddItem意图的初始化器,再用这个意图创建SiriTipView:let addItemIntent = AddItem(box: boxParameter) let siriTipView = SiriTipView(intent: addItemIntent)
完成以上步骤后,SiriTipView会自动替换短语中的$\.$box占位符为你传入的实体显示名称,最终提示内容会变成类似"Add new item to 药品盒 in <你的应用名>",让用户直观了解可以指定具体Box的快捷指令用法。
内容的提问来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

