【问题标题】:Multiple clickable items in ListView inside android widgetandroid小部件内ListView中的多个可点击项目
【发布时间】:2015-06-02 07:53:08
【问题描述】:

我正在尝试在每行中有多个可点击项目的小部件中制作 ListView。例如,如果每一行都有包含链接的数据,则该行中的一个按钮用于打开链接,另一个按钮用于共享链接。

示例代码:

小部件布局

<LinearLayout...>

<TextView../>
<ListView with id="list_view" />

</LinearLayout>

ListView 中的每个列表行都有:

<LinearLayout with id="listRowParent">

<TextView../>
<Button with id="openBtn"/>
<Button with id="shareBtn"/>

</LinearLayout>

我可以使用

设置每一行的 onClick
remoteViews.setPendingIntentTemplate(R.id.list_view,
                    *<PendingIntent>*); //in onUpdate

remoteView.setOnClickFillInIntent(R.id.openBtn, *fillIntent*); // in adapter

效果很好,但我不能通过执行 remoteViews.setPendingIntentTemplate(R.id.shareBtn, ); 因为如果我这样做,单击按钮不会发生任何事情。

问题: 我正在尝试的可能吗?如果是,非常感谢您的帮助:)

【问题讨论】:

  • 我怀疑您的按钮问题是它与 TextView 重叠。在这种情况下,您需要使用 layout_weight、重力或设置宽度(不灵活)的想法来修改布局。这样按钮就不会重叠和可见。为您的按钮添加大文本,以便您可以在 Listview 中清楚地看到它们。通常我会提供样品。但现在,您可以先尝试一下,看看我们能做些什么。
  • 我正在使用 layout_weight,按钮不太可能重叠,因为按钮在被触摸时会突出显示。我试过删除文本视图并只保留两个按钮,但它仍然不起作用。

标签: android listview android-listview android-widget


【解决方案1】:

我的错。我应该使用

remoteViews.setPendingIntentTemplate(R.id.list_view,
                    *<PendingIntent>*);

对于这两个按钮,但我试图在第二个中直接使用按钮的 ID。修好了。

【讨论】:

  • 我正面临着确切的问题。你能分享一下 getViewAt() 代码吗?
猜你喜欢
  • 1970-01-01
  • 2019-01-13
  • 2012-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-24
  • 2018-02-10
相关资源
最近更新 更多