【发布时间】:2012-07-29 08:27:37
【问题描述】:
我有一个带有 3 张图片的小部件。 每张图片描述不同的事物。
我有一堂课,里面只有一个网络查看器。 我希望如果用户触摸第一张图片,webviewer 将启动到地址 1,如果是第二张图片,则为 2,依此类推。
Intent i = new Intent(context, WebViewTestActivity.class);
i.putExtra("url", "http://www.google.com");
PendingIntent pi = PendingIntent.getActivity(context,0, i,0);
views.setOnClickPendingIntent(R.id.img1, pi);
问题出在使用 webviewer 的类中,我从意图的额外值中获取 url。但是如何添加三个具有相同“键”(url)的 url,以及如何知道用户在 webviewer 类上点击了第一张图片、第二张图片等?
谢谢。
编辑:
我在这里找到了解决方案:
Processing more than one button click at Android Widget
使用 i.setAction("url1...."); (以我的意图)
谢谢
【问题讨论】:
-
你需要更具体。如果您只在 webview 中查看一个 url(一次一个),那么为什么需要其中三个呢?如果您需要全部免费,为什么不直接将它们传递给“url1”、“url2”、“url3”。即使只需要一个,您也可以随时发送
i.pusExtra("selectedUrl", 1)或其他内容 -
我的意思是我实际上需要在参数中使用 url 来“调用”活动。我有 3 个不同的图像和 3 个不同的 url。现在问题出在 webview 中,我不知道用户点击了哪个图像,所以我不知道要显示哪个 url。我的问题更多是关于“如何拥有一种“动态”意图,取决于用户点击的图像,意图的内容是不同的。谢谢
-
只需在
onClickListener中创建 Intent 即可:) -
感谢 michal K 的回答。问题是我使用了小部件,所以我没有以正常方式使用 onCLickListener。我需要像我的代码示例一样使用 setOnClickPendingIntent,那么如何在此“侦听器”中指定意图?谢谢
-
在每个包含图像的视图上分别
setOnClickPendingIntent有问题吗?我在RemoteViews 没有经验,这就是我要问的原因,但这样做似乎是合理的。还有 developer.android.com/reference/android/widget/…, android.app.PendingIntent) 用于在集合视图上设置 pedning Intent。
标签: android