如何使用叠加图像创建图像按钮?

时间:2011-05-10 16:29:57

标签: android android-widget imagebutton

我有一个以占位符开头的按钮,但是一旦用户进行身份验证,它就会更改为该用户的自定义图像。

<ImageButton android:id="@+id/button"
             android:background="@null"
             android:layout_height="wrap_content"
             android:layout_width="wrap_content"
             android:src="@drawable/button_default"/>

然后是:

ImageButton ib = (ImageButton)findViewById(R.id.button);
ib.setImageBitmap(previouslyDecodedBitmap);

但这看起来很糟糕。我无法弄清楚如何正确设置样式,以便新解码的位图大小合适,行为类似于ImageButton。我怀疑除了ImageButton之外我还可以使用一些小部件组合来实现这个目标吗?我希望我可以将ImageView嵌套在ImageButton之上,将其作为子项添加到ImageButton,但这似乎不允许(它在Silverlight中)。 ..)。

无论如何,欢迎任何有关如何正确执行此操作的建议。感谢。

1 个答案:

答案 0 :(得分:0)

一种方法是使用框架布局并将按钮和图像放在另一个上面,顶部是imageview,保持不可见(android:visibility =“invisible”)
点击按钮并进行身份验证后,将其显示在按钮上,否则您甚至可以隐藏下面的按钮并仅在顶部显示图像。