安卓ImageButton焦点发光/颜色着色

6

因此,在使用带有 ImageButton 的

android:background="@drawable/icon"

默认情况下,每个默认的Android按钮都会有一个在焦点/按下时出现的发光效果,但是该效果已经消失了。我知道我可以使用选择器在不同状态下使用不同的图像,但这不是Android所做的,也不是我想要的。
当我聚焦/按下imagebutton时,我希望Android添加默认的外部发光效果。我认为(也许以一种不同的方式完成,我不知道!)Android正在使用染色来实现这一点。然而,使用染色选择器并像这样定义:
android:tint="@color/tint_selector"

我的应用程序受损了。使用静态颜色作为色调并不会破坏它,但是没有色调是可见的。

所以我的问题是:

  1. 安卓如何实现发光效果?
  2. 如果使用色调来实现,如何定义一个在API 7及以上版本中适用于imagebutton的色调选择器,并且对于不同状态下的不同颜色,选择器应该如何呈现?
  3. 如果使用色调来实现,是否有一个静态资源可以使用,这样我就可以在每个安卓API上都获得“默认发光颜色”?例如@color/glow?

你只是想让图像按钮发光吗? - coder_For_Life22
在点击(onClick)和获得焦点(onFocus)时高亮,是的。 - omni
1个回答

0

实际上是使用可绘制选择器完成的。它不是外部的,只是在未选定状态下,9patch 较小。


有没有相关资源?我不敢相信它使用了9patch。 当输入框聚焦时,我所说的发光效果也存在于所有输入字段之外。 - omni
实际上,在更仔细地查看后,这是不正确的。一个简单的例子:创建一个新应用程序并声明一个应用程序图标。在应用抽屉中,您可以获得发光效果,而无需声明9patch。然而,对于我的需求,我发现只需要使用带有我的图标作为src和选择器作为背景的ImageButton即可。 - omni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接