如何用很多按钮创建一个小部件?

时间:2011-11-21 06:12:00

标签: android android-widget android-intent

这可能是一个愚蠢的问题,但我真的想知道它是否是正确的方法。

我有一个包含多个Buttons的应用小部件。我已为这些Intent中的每一个创建了待处理的Buttons,我已使用

进行设置

setOnClickPendingIntent()

我的问题很简单。我已经有了9 Buttons,可能会在将来扩展。那么可以有九个单独的待处理Intents吗?

大部分Buttons执行相同的工作,但与Intent附加的特定额外字段不同。那有什么建议吗?因为很多待处理的Intents代码看起来很脏。

1 个答案:

答案 0 :(得分:0)

一个想法可能是使用与每个控件相关联的“标记”。

http://developer.android.com/reference/android/view/View.html#setTag(int,java.lang.Object)

它允许您为每个按钮添加自定义值(您定义内容和格式)。

创建按钮时,在按钮上添加一个键:

button1.setTag((Object) "action1");
button2.setTag((Object) "action2");

仅定义与每个按钮关联的一个待处理意图。

在待处理的意图中,获取视图的“标记”,并相应地采取行动

if (((String) view.getTag()).equals("action1"))
    etc...