【问题标题】:Can Siri custom intents display custom UI for every input parameter?Siri 自定义意图是否可以为每个输入参数显示自定义 UI?
【发布时间】:2020-04-03 05:54:03
【问题描述】:

来自苹果文档https://developer.apple.com/documentation/sirikit/creating_an_intents_ui_extension/configuring_the_view_controller_for_your_custom_interface的以下描述

虽然 SiriKit 通常一次只将一个参数传递给您的 configureView(for:of:interactiveBehavior:context:completion:) 方法,但您可以配置一个显示任意数量参数内容的视图。调用配置方法的完成处理程序时,向 SiriKit 提供界面显示的一组参数。在使用下一组参数创建新的视图控制器之前,SiriKit 会检查您是否已经显示了这些参数。如果您这样做了,SiriKit 不会要求您再次显示它们。

我期待在以下情况下调用 configureView 方法

  1. 在用户提供任何参数输入之前。这次 INParameter 列表将为空
  2. 在询问用户输入的每个参数之前。因此,我们可以决定是为该输入显示自定义 UI,还是允许 siri 显示其默认 UI。

所以我创建了一个自定义意图(类别 Order),它接受 3 个参数。并且必须在每个输入参数期间向用户显示自定义 UI。

但是对configureView 方法的调用仅在用户提供所有输入参数后发生一次。所以总是显示来自 Siri 的默认 UI。 INParameter 列表也是空的。

是否可以为每个输入参数显示自定义 UI?还是仅限于系统意图?

我正在使用 iOS 13 进行测试。

【问题讨论】:

  • 您能否发布您的自定义 UI 以进一步了解您要显示的 UI 类型?
  • 例如,我想在集合视图中显示项目列表供用户选择。现在,Siri 正在一个简单的表格视图中显示列表,仅带有“displayString”。但我想显示这些项目的图标和更多详细信息。

标签: ios siri sirikit sirishortcuts


【解决方案1】:

所以答案是否定的。

我收到了来自苹果论坛的以下答复。 https://forums.developer.apple.com/thread/126861

您只能自定义确认和处理阶段的视图 处理意图——你不能在解决过程中自定义 UI 一个参数的值。系统和自定义都是如此 意图。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-26
    • 1970-01-01
    • 2010-09-27
    相关资源
    最近更新 更多