如何通过给定的ID调用视图

时间:2012-02-05 13:02:16

标签: java android button imageview

我有一个创建64个按钮的循环,在循环中,该按钮使用button.setId(n)

获取id

问题是,如何调用具有特定ID的按钮来更改其属性。

理想情况下,我正在寻找与此类似的东西

ImageView button2 = (ImageView)findViewById(button.("with id 14, for example"))

2 个答案:

答案 0 :(得分:1)

如果您要设置ID,则表示您已知道该ID。因此,您使用您设置的ID调用findViewById()

IOW,如果你打电话:

button.setId(14);
你稍后打电话给:

findViewById(14);

当然,欢迎您将Button个对象放在数组或其他内容中,然后以这种方式访问​​它们。

答案 1 :(得分:0)

一种方法:每次创建按钮时,将其引用添加到容器对象中,如:

Map<Integer, ImageView> buttonViews = new HashMap<Integer, ImageView>();

添加按钮状态:

ImageView b = new ImageView (this);
buttonViews.put(id, b);

要将属性更改为任何按钮:

buttonViews.get(id).setImageResource(R.drawable.buttonImage1);

通过这种方式,您可以制作各种效果......