实现Activity的透明效果
本文转载自三千世界–只挥一刃
要实现Activity的透明效果,发现有两种实现方法:
其一,直接在相应的xml中进行一下配置即可。
其二,是通过代码进行设置。相对于第一种来说,复杂许多,但是效果也比较自由。
首先,来试一下通过配置得到的效果。
配置是通过安卓的样式来实现的,具体的做法是在AndroidManifest.xml找到要实现透明的Activity,在想要实现透明的activity中添加如下的代码:
android:theme="@android:style/Theme.Translucent"
只这一句就完成了。下面是我工程的截图。
这样打开应用可以直接看到手机桌面的应用图标,但是却无法点击。因为这是在你的Activity中,就算透明了,依旧是存在的,可以通过上面的标题栏确定你是否还在你的应用界面中,还有一个缺点就是透明度必须是100%,无法设置透明度。
第二种:
先上效果图:
如何实现。
第一步,先自定义我们的style文件。
在res/values文件夹下,新建一个style.xml文件,写入下面的代码
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="translucent"> <item name="android:windowBackground">@color/translucent_background</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> </style> </resources>
再在该文件夹下面新建一个color.xml文件,写入下面的代码
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="translucent_background">#90000000</color> </resources>
这里需要解释一下,这里的color参数,是两位数一个单位,前两位数是透明度,后面每两位一对是16进制颜色数字,这里的示例是白色的。
第二步,在AndroidManifest.xml找到要实现透明的Activity,在想要实现透明的activity中添加如下的代码:
android:theme="@style/translucent"
或者也可以在相应界面的oncreate()方法中添加如下的代码:
setTheme(R.style.translucent);
这个时候就可以实现Activity的透明了。包括标题栏也是一起透明的,很和谐。
但是,按钮的颜色还是很深,其实就是没一起透明。怎么办?
同样在oncreate()方法里面设置一下就行
Window window=getWindow(); WindowManager.LayoutParams wl = window.getAttributes(); wl.flags=WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON; wl.alpha=0.6f;//这句就是设置窗口里控件的透明度的.0.0全透明.1.0不透明. window.setAttributes(wl);
这样就是上图的最终效果了。
实现Activity的透明效果相关推荐
- android activity透明主题,Android应用的全透明效果--Activity及Dialog的全透明
1.Activity全透明 同学给了这个有趣的代码,现在公布出来. 先在res/values下建colors.xml文件,写入:<?xmlversion ="1.0"enco ...
- Android UI效果实现——Activity滑动退出效果
更新说明: 1.在QQ网友北京-旭的提醒下,在SlideFrame的initilize方法中添加了focusable.focusableInTouch.clickable的状态设置,否则会导致部分情况 ...
- Android透明到白色滑动渐变,Android开发之Activity全透明渐变切换方法
Activity全透明渐变切换 类似于Dialog的显示动画效果一样 1. 先设置Acitivity为去透明,在取消掉Activity默认的切换动画 true @color/colorPrimary ...
- 《Unity着色器和屏幕特效》——2.2 进阶的透明效果
本节书摘来自华章计算机<Unity着色器和屏幕特效>一书中的第2章,第2.2节,作者[美]杰米·迪恩(Jamie Dean),译 周翀,张薇,更多章节内容可以访问云栖社区"华章计 ...
- Android 动画之View动画效果和Activity切换动画效果
View动画效果: 1.>>Tween动画 通过对View的内容进行一系列的图形变换(平移.缩放.旋转.透明度变换)实现动画效果,补间动画需要使用<set>节点作为根节点,子节 ...
- Windows窗体透明效果
虚拟机里的win7也想实现透明效果, 使用vitrite这个免费软件就可以了.
- [css] rgba()和opacity这两个的透明效果有什么区别呢?
[css] rgba()和opacity这两个的透明效果有什么区别呢? 1.opacity 是属性,rgba()是函数,计算之后是个属性值: 2.opacity 作用于元素和元素的内容,内容会继承元素 ...
- IE6下PNG图片透明效果(PNG图片做背景也可以)
懒人萱在这里保证发的文章都是高质量的经过测试的JS代码,而且IE6.IE7和火狐都兼容的,希望大家多多关注我的帖子,我会把我的经验都共享出来哦! 懒人萱在寻找PNG图片透明效果的JS特效代码的时候,发 ...
- Unity Shader 之 透明效果
本文引用 Unity Shader入门精要 开启透明混合后,一个物体被渲染到屏幕上时,每个片元除了颜色值和深度值外,还有--透明度.透明度为1,则完全不透明,透明度为0,则完全不会显示. 在Unity ...
最新文章
- PHP服务器环境打开配置文件
- Java虚拟机(JVM)以及跨平台原理
- Netflix 如何使用机器学习来提升流媒体质量
- Java黑皮书课后题第5章:**5.45(统计:计算平均值和标准方差)在商务应用中……编写一个程序,提示用户输入10个数字,然后运用下面的公式,显示这些数字的平均值以及标准方差
- C++与Java多态的区别
- c语言中 调用函数除函数名外,【单选题】在 C 语言中 , 调用函数除函数名外 , 还必须有 ( ). (10.0分)
A. 函数预说明 B. 实际参数 C. ( ) D. 函数返回值...
- Kaggle初体验之泰坦尼特生存预测
- Swift与OC混编
- Python Qt GUI设计简介、环境下载和安装(基础篇—1)
- vnc远程访问linux服务器,如何通过 VNC 远程访问 Linux 虚拟机
- teamview linux命令行安装参数
- CentOS7.4通过ssh连接到服务器的时候特别慢
- win10笔记本使用virtualbox鼠标失灵
- 消息中心(系统消息)实现
- 国信\教学课程\05.EL进阶:Object-Oriented-EasyLanguage-Concepts-By-Android-Marvin
- 回调函数的注册机制为什么会在嵌入式固件开发中应用如此广泛?
- 关于前端的一些学习记录(1)
- 在字节跳动干软件测试5年,4月无情被辞,想给划水的兄弟提个醒
- 华为HCIA(RS网络工程师)2021题库
- Win7提速如何进行磁盘清理和碎片整理