安卓 - 如何设置半透明布局?

19

我刚接触安卓应用。

enter image description here

这张图片中,有一个底部布局,带有一些选项,如播放、删除等,并且具有透明度以显示其背景。

我该怎么做才能像那样呢?


兄弟,这不是iOS的用户界面。我是从Google Play商店上下载的。 - Rakesh L
Play Store在我查看的任何Android设备上都不像那样。如果是这样,那么OEM得到了-1。那些是iOS按钮,每一个都是。也许是三星设备吗? - Christopher Perry
我不记得是哪个应用了,我只是在Play商店截取了一个应用的屏幕截图。 - Rakesh L
1
那么,对于制作该应用程序的人来说,这是一个-1。我只是想说,不要跟随别人的糟糕设计。尽量遵循Android设计模式 - Christopher Perry
5个回答

57

使用 android:background ="#88676767" 来改变第一个 88 的透明度。

回复你的评论:

ImageView iv = (ImageView) findViewById(your_imageId);    
iv.setColorFilter(Color.argb(150, 155, 155, 155),   Mode.SRC_ATOP);

第三个选项:

LinearLayout layout = (LinearLayout) findViewById(R.id.your_id);
    Drawable d = getResources().getDrawable(R.relevant_drawable);
    d.setAlpha(50);
    layout.setBackgroundDrawable(d);

1
是的,我明白了你的意思。我为布局设置了一个背景图像,就像这样:android:background="@drawable/myimage"。那么如何再次为android:background属性添加另一个属性,例如android:background ="#88676767"? - Rakesh L
1
我在答案中添加了另一个选项。 - baronS
您对 setAlpha 的使用似乎是不正确的。根据 http://developer.android.com/reference/android/view/View.html#setAlpha(float) ,应该使用介于 0 和 1 之间的值。 - faizal
有两个setAlpha方法:其中一个(int alpha)接受0到255之间的参数。根据文档:alpha是应用于视图绘制的透明度(0..255)。 - baronS
我必须要给这个点个踩。它不能正常工作。它给我一个灰色的背景,没有半透明效果。 - Daniel Viglione

17

颜色格式为ARGB,即 ALPHA/RED/GREEN/BLUE。

透明度设置在alpha通道上,取值范围为0(0x00)到255(0xFF),数值越小越透明,数值越大越不透明。

因此,如果您需要半透明的灰色,则设置颜色为:#80444444


6

设置alpha值非常容易,共有两种方法。我的示例将60%不透明度的黑色背景应用于线性布局。

第一种方法是在XML文件中添加以下行来更改布局的alpha值(也在图像中):

android:background="@android:color/black"
android:alpha="0.6"

第二种方法是在设计编辑器视图中更改alpha和背景值:

设计编辑器方法

XML文件方法



1

在这种情况下,使用带有透明度的32位PNG作为背景(因为它不具有均匀透明度)。


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