[英]setting ImageButton's background transparent with Theme.Light in android
如何将ImageButton的背景色设置为“透明”?
当我使用默认的android主题尝试使用以下代码时,但使用'Theme.Light',我看到的是灰色背景。
ImageButton deleteBtn = new ImageButton( this );
deleteBtn.setImageResource( R.drawable.delete_big );
deleteBtn.setBackgroundColor(android.R.color.transparent);
(我需要动态创建这些按钮。。我已经看到解决方案,其中提到使用android的layout.xml文件指定@null背景色。我如何以编程方式实现同一目的?非常感谢您的帮助。谢谢!
我必须做类似的事情,我使用了透明的png 9patch。 然后,您可以将其设置为背景,例如:
deleteBtn.setBackgroundResource(R.drawable.transparent_bground);
编辑: 这是您可以使用的9补丁。 将其保存在您的res / drawable文件夹之一中。
即使这是一种答案,这还是出了问题。
注意颜色。 android.R.color.transparent
实际上是引用查找表的整数,并且每次在Java中使用Android设置颜色时,它都会接受一个代表该颜色的整数。
现在,这是一个棘手的部分:这里发生的是将bg颜色设置为查找表索引,该索引恰好转换为灰色。 如果我没记错的话, getResources().getColor(id)
是可以从上下文或活动中调用以获取正确颜色的函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.