gpt4 book ai didi

android - 在 StackView 小部件项目中设置 onClick 事件

转载 作者:行者123 更新时间:2023-11-29 02:02:58 26 4
gpt4 key购买 nike

我有一个带有集合的小部件(这很重要!)。它看起来像这样:

Android widget screenshot

我的代码基于官方 Android 文档:Android App Widgets .

所以对于小部件,我在 StackView 集合中使用带有自定义对象的集合。此集合由 StackRemoteViewsFactory(实现 RemoteViewsService.RemoteViewsFactory)处理。如您所见,每个项目都有三个 ImageButton 和一个 TextView。

我知道如何为整个 RemoteView 项目添加 onClick 行为。这在官方文档中有描述。

但我的每个 View (按钮和 TextView )都需要四个 onClick 行为。

我的问题:对于带有 RemoteView 集合的小部件中的每个 StackView 项目,是否可以对点击有不同的看法?

现在我看不出有任何可能性如何做到这一点 :(


更新:

我想在这个问题中使用 onClicks 进行类似操作:Processing more than one button click at Android Widget .但是由于小部件实现的差异,该问题的解决方案不适用于具有 RemoteViews 集合的小部件。

最佳答案

如果您看过 StackView 小部件示例代码,您就会知道有提供者类和服务类。在服务类中,尝试将 setOnClickFillInIntent 添加到 stackview 布局的每个 ID 中,Intent 包括“命令词”。并在提供程序类中将 setPendingIntentTemplate 设置为示例代码。这是重要的部分,在提供者类中,有 OnReceive()。 setPendingIntentTemplate 将发送 Intent,包括您在 Provider 类中设置的特定操作和服务类中为每个 layour id 设置的“comman word”。那么现在您知道用户从 Stack View 小部件中单击了哪个按钮。如果您需要进一步的提示,请告诉我我会添加示例代码。

关于android - 在 StackView 小部件项目中设置 onClick 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11613022/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com