① 如何为android的ImageView和GrilView设置透明背景色
在布局文件中,可以使用属性android:background="#00ffffff",在方法中使用view.setBackgroundColor(android.graphics.Color.parseColor("#00ffffff"));
在GrilView中注意,如果有子视图,子视图的背景设为透明才能使GrilView背景全部透明。
② 如何设置Android中控件的颜色透明度
设置Android中控件的颜色透明度,可自由设置在layout里也可以在activity里
eclipse
1
#ff000000 此为16进制颜色代码,
前2位ff为透明度,后6位为颜色值(000000为黑色,ffffff为白色,可以用ps等软件获取)。
2
透明度分为256阶(0-255),计算机上用16进制表示为(00-ff)。透明就是0阶,不透明就是255阶,如果50%透明就是127阶(256的一半当然是128,但因为是从0开始,所以实际上是127)。
3
10进制的255换算成16进制是ff,127换算成16进制是7f,#7f000000 代表50%透明度的黑色。 (写成#50000000当然是不行的)进制转换可使用win7自带计算器(转为科学型)。例:25%透明度的一种红色“#3ff70000
③ android编程如何把现有的背景图片设置成透明的
方法一:
只要在配置文件内activity属性配置内加上
android:theme="@android:style/Theme.Translucent"
就好了。
这样就调用了android的透明样式!
方法二:
先在res/values下建colors.xml文件,写入:
<?xmlversionxmlversion="1.0"encoding="UTF-8"?>
<resources>
<colornamecolorname="transparent">#9000</color>
</resources>
这个值设定了整个界面的透明度,为了看得见效果,现在设为透明度为56%(9/16)左右。
④ 请教android怎么让控件背景透明
以Android Studio为例,步骤如下:
1、直接打开相关窗口,在Android-app-res-layout的空白处点击鼠标右键并选择New-Layoutresource file。
⑤ android怎么把activity的最底层view的背景设为透明
设置背景为透明
1、设置背景为透明
<ImageView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"/>也可以设置颜色值,前两位为透明度
2、设置背景透明度
<ImageView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:alpha="0"/>
相应的也可以在java代码中设置透明
⑥ Android 状态栏透明
前言:最近项目大量用到状态栏透明,网上也出现很多库可以直接拿来用,个人认为没有必要那么重引用到一个库(有木有同学和我有一样的想法),所以研究了一番,在此做个记录加强记忆也便后期查阅,如果无意中有幸能帮助到你那就再好不过了。
Android 从 4.4 (SDK 19) 开始支持 系统栏(状态栏+导航栏)半透明 效果:
翻译一下就是:
TranslucentDecor 主题设置了两个属性 windowTranslucentStatus 和 windowTranslucentNavigation 都为 true,前者指定状态栏半透明、后者指定导航栏半透明。
本文只探讨“状态栏” 。
默认样式是这样:
可见 Toolbar 和系统状态栏之间有明显的分界,我们要实现的效果是 Toolbar 和状态栏背景统一,看起来像是一个整体(自行脑补图片)。
按照官方文档,我们自定义主题:
对应的 Activity 引用该主题:
我看来看看效果:
虽然实现了半透明,但是布局被状态栏覆盖,接下来在布局文件中设置 fitSystemWindows (注意加到根节点 ConstraintLayout 上):
来看看效果:
虽然布局没有被状态栏覆盖,但是状态栏背景显然这不是我们想要的效果😭
为什么状态栏会这么奇怪?
文章开头的定义中我们说了,布局文件会延伸到状态栏所占区域下, fitsSystemWindows 的作用是给对应的 View 增加 padding(这里以 ConstraintLayout 为例),目的是为了让其内容不被状态栏遮挡。
在我们的布局文件中 ConstraintLayout 没有设置背景(默认白色),所以状态栏默认的半透明背景色和 ConstraintLayout 的白色背景叠加,就变成了上图中的效果。
【总结】两个基本概念:
1、 windowTranslucentStatus 设置为true之后,状态栏默认是 半透明 的(4.4 是黑色到透明色渐变,5.0+ 是纯黑色半透明),和我们要求的 透明 相去甚远。更重要的是,布局会延伸到状态栏底下。
2、 android:fitsSystemWindows 简单理解 就是 View 为了适配系统状态栏和导航栏(不被遮挡)自动 增加 padding ,当然真正的实现原理比这复杂很多而且不同的 View 可以自定义实现方式。
所以,为了实现文章开头提出来的“状态栏透明”效果,我们需要处理:
设置 windowTranslucentStatus 为 true,让状态栏半透明。
在根节点设置 android:fitsSystemWindows 使其不被状态栏遮挡。
Android 4.4 暂时没有办法去掉状态栏的渐变。
Android 5.0+ 开始支持修改状态栏颜色,设置透明色即可把半透明去掉。
看看效果:
我们看到即使状态栏透明了,但是其底色是一片白,因为跟节点 ConstraintLayout 没有设置背景,大多情况下我们不会给整个跟节点设置颜色,可以考虑把 android:fitsSystemWindows 设置到子 View 上,本例中是 AppBarLayout (5.0+ 无效,只能显式给 AppBarLayout 加 padding,可以利用其背景色),实际项目中可灵活调整。
最终效果:
至此,完成状态栏透明效果,网上有很多库,实际上都是基于此原理,在此基础上再自定义 View 做为状态栏背景。
https://developer.android.com/about/versions/android-4.4.html
⑦ Android 透明度设置详解
格式:
android:background="#XXxxxxxx"(颜色可以写在color中)
说明:半透明颜色值不同于平时使用的颜色,半透明颜色值共8位,前2位是透明度,后6位是颜色。也就是说透明度和颜色结合就可以写出各种颜色的透明度。下面是透明度说明表,供大家参考。
部分透明度示例:
setAlpha()的括号中可以填0–255之间的数字。数字越大,越不透明。
注意点:
在5.0以上系统时,有些机型会出现莫名其妙的颜色值不起作用,变成透明了,也就是用此方法会导致其他共用一个资源的布局(例如:@color/white)透明度也跟着改变。比如text用上述方法设置成透明后,项目中,其他用到text颜色值的控件,都变成透明了。
原因:在布局中多个控件同时使用一个资源的时候,这些控件会共用一个状态,例如ColorState,如果你改变了一个控件的状态,其他的控件都会接收到相同的通知。这时我们可以使用mutate()方法使该控件状态不定,这样不定状态的控件就不会共享自己的状态了。
android:alpha的值为0~1之间的数。数字越大,越不透明。1表示完全不透明,0表示完全透明。
说道Activity透明,发现网上的基本上都已经过时,在有v7以上的控件都无法实现,均会报错
所以如若你的布局xml文件有 support-V7 上的控件的话,<style name="translucent">里的name要前要添加 AppTheme,如:
⑧ android设置透明使底部控件可见
在Android上设置透明背景以使底部控件可见,可以使用设备位图来实现,只需将设备位图的Alpha值设置为零,即可让底部控件可见。除此之外,还可以使用setAlpha()方法来设置Alpha值,以便让底部控件显示出来。
在Android上设置透明背景以使底部控件可见,可以使用设备位图来实现,只需将设备位图的Alpha值设置为零,即可让底部控件可见。除此之外,还可以使用setAlpha()方法来设置Alpha值,以便让底部控件显示出来。
⑨ Android设置Activity背景为透明style的方法
1.设置Theme.Translucent
只需要在Manifest中需要透明的Activity内设置theme为以上任意一个就可以了
2.在Activity的layout.xml文件中,设置父布局背景透明度(不设置背景色默认全透明),不设置透明度看不出效果,如果子控件设置了背景色且不透明,则子控件所占位置无透明效果。
3.效果图
1.使用自定义的Theme
2.在res-values-styles.xml中添加MyTransparent
3.在res-values-colors.xml中添加透明颜色值
4.以上步骤设置完成和方法一有同样的效果,省去了在layout.xml设置透明背景色(如果在布局中页设置了背景色,将以布局中的为准)。方法二相对灵活一点,可以多设置一些属性,如模糊背景:
⑩ android导航栏与状态栏颜色及透明度
首先创建一个空项目,如下图
可以看到状态栏是白字黑背景, 导航栏也是白图标黑背景
嘿嘿, 我们先把状态栏隐藏掉,在添加一个ImageView, 让ImageView做背景(方便查看)
样子如下:
将状态栏和导航栏设置透明, 找到 Manifest.xml 文件, 在主题样式中修改
android:statusBarColor 设置状态栏背景色
android:navigationBarColor 同上
android:windowLightStatusBar 设置状态栏文字色, true为深色, false为白色
android:windowLightNavigationBar 同上
android:windowTranslucentStatus 设置状态栏半透明状态, true为半透明, false为不透明
android:windowTranslucentNavigation 同上
最后两个半透明状态下面没用, 可自己尝试看效果
效果图如下:
可以看到导航栏与状态栏并没有透明,原因是默认不能占用状态栏空间与导航栏空间,根布局背景为白色,所有这里显示白色
可以通过设置 getWindow().getDecorView().setSystemUiVisibility() 来适配
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 适配状态栏空间
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 适配导航栏空间
效果如下: