select 卡片后的额外布局

Extra layout after select card with intent

在其他地方发现这个问题,类似于 and How to trigger onclick on selection in bixby 但我无法发表评论来提出进一步的问题,而且我对提供的答案很模糊,所以决定提出一个新问题。

我想要实现的是显示一个列表供用户选择,用户选择后,它将播放新闻音频(操作 'playnews')。

这是我连接到布局宏的视图

render{
    list-of (this){
        has-details (true)
        where-each (one){

            layout-macro (display-list){
                param (one){
                    expression (one)
                }
            }
            spoken-summary("#{value(one)}")
        }
    }
}

这是我的布局宏定义

layout-macro-def (display-list){
  params{
    param (one){
      type (userWantToHear)
      min (Required) max (One)
    }
  }

  content{
    cell-card{

      slot2{
        content{
          primary{
            template ("#{value(one)}"){
            }
          }
        }
      }
      on-click{
        intent{
          goal: playNews
        }
      }
    }
  }
}

当我点击选择列表时,我实现了,

它将我带到另一个页面,其中包含我刚才单击的主题,只有当我在显示的新页面上单击卡片时才会播放音频。

是的,这个问题与我上面提到的类似,但我需要进一步解释,因为我对此真的很模糊(是的,我不能 post 发表评论)。我想摆脱音频播放前的单击。

谢谢!

首先是简单的答案: 不幸的是,on-click 不适用于 result-view 中的 list-of。因此,在执行 result-view 的 on-click 方式时,需要额外的页面。

现在是有用的答案: 要实现您想要的功能,使用 selection-of 的 input-view 可能比 result-view 中的 list-of 容易得多。 这可能很难用语言来解释,所以我做了一个样品胶囊,你可以 download it 试试。

在提供的两个训练示例中,显示所有标题 使用 result-view,并使用 on-click 重定向。 play title直接使用触发input-view的动作。

如图所示,没有多余的页面,点击一下,结果一样。