Android中自定义Activity和Dialog的位置大小背景和透明度等demo
1.自定义Activity显示样式
先在res/values下建colors.xml文件,写入:
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <!-- 设置透明度为56%(9/16)左右 -->
- <color name="transparent">#9000</color>
- </resources>
这个值设定了整个界面的透明度,为了看得见效果,现在设为透明度为56%(9/16)左右。
再在res/values/下建styles.xml,设置程序的风格
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <mce:style name="Transparent"><!--
- 设置背景 -->
- <item name="android:windowBackground">@color/transparent</item>
- <!-- 设置底层可见 -->
- <item name="android:windowIsTranslucent">true</item>
- <!-- 设置跳转效果 -->
- <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
- --></mce:style><style name="Transparent" mce_bogus="1"> 设置背景 -->
- <item name="android:windowBackground">@color/transparent</item>
- <!-- 设置底层可见 -->
- <item name="android:windowIsTranslucent">true</item>
- <!-- 设置跳转效果 -->
- <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
- </style>
- </resources>
注:mce部分为发帖是自动生成的,实际不需要。
最后一步,把这个styles.xml用在相应的Activity上。即在AndroidManifest.xml中的任意<activity>标签中添加
android:theme = "@style/transparent"
如果想设置所有的activity都使用这个风格,可以把这句标签语句添加在<application>中。
最后运行程序,哈哈,是不是发现整个界面都被蒙上一层半透明了。最后可以把背景色#9000换成#0000,运行程序后,就全透明了,看得见背景下的所有东西可以却都操作无效。呵呵....
2.将Activity以Dialog的形式显示并自定义样式
先在res/drawable下建bgconfig.xml文件,写入:
- <?xml version="1.0" encoding="utf-8"?>
- <shape xmlns:android="http://schemas.android.com/apk/res/android">
- <solid android:color="#ffffff" />
- <stroke android:width="3dp" color="#000000" />
- <corners android:radius="3dp" />
- <padding android:left="3dp" android:top="3dp" android:right="3dp"
- android:bottom="3dp" />
- </shape>
再在res/values/下建styles.xml,设置程序的风格
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <!-- 设置样式 -->
- <mce:style name="Theme.MyActivity" parent="android:style/Theme.Dialog" mce_bogus="1" mce_bogus="1"><!--
- <item name="android:windowBackground">@drawable/bgconfig</item>
- --></mce:style><style name="Theme.MyActivity" parent="android:style/Theme.Dialog" mce_bogus="1" mce_bogus="1" mce_bogus="1"> <item name="android:windowBackground">@drawable/bgconfig</item>
- </style>
- </resources>
注:mce部分为发帖是自动生成的,实际不需要。
最后一步,把这个styles.xml用在相应的Activity上。即在AndroidManifest.xml中的任意<activity>标签中添加
android:theme = "@style/transparent"
如果想设置所有的activity都使用这个风格,可以把这句标签语句添加在<application>中。
3.设置窗口大小和位置
- WindowManager m = getWindowManager();
- Display d = m.getDefaultDisplay(); //为获取屏幕宽、高
- LayoutParams p = getWindow().getAttributes(); //获取对话框当前的参数值
- p.height = (int) (d.getHeight() * 1.0); //高度设置为屏幕的1.0
- p.width = (int) (d.getWidth() * 0.7); //宽度设置为屏幕的0.8
- p.alpha = 1.0f; //设置本身透明度
- p.dimAmount = 0.0f; //设置黑暗度
- getWindow().setAttributes(p); //设置生效
- getWindow().setGravity(Gravity.RIGHT); //设置靠右对齐
Android中自定义Activity和Dialog的位置大小背景和透明度等demo的更多相关文章
- Android中自定义Activity和Dialog的位置大小背景和透明度等
1.自定义Activity显示样式 先在res/values下建colors.xml文件,写入: view plainprint? 1. <?xml version="1.0" ...
- 在Android中动画移动一个View的位置,采用Scroller类实现Android动画之 View移动
在Android中动画移动一个View的位置,采用Scroller类实现 今天说最近自己遇到的一个问题,就是要用动画效果来移动一个VIew的位置. 这个具体的情况是,需要做一个SlidingMenu的 ...
- Android中半透明Activity效果另法
Android中的Activity有没有类似于像Windows程序样的窗口式显示呢? 答案当然是有. 下图就是一个窗口式Activity的效果图: 下面就说说实现过程: 首先看看AndroidMani ...
- [转]Android中自定义checkbox样式
android中自定义checkbox的图片和大小 其实很简单,分三步: 1.在drawable中创建文件checkbox_selector.xml: <?xml version=" ...
- 转--Android中自定义字体的实现方法
1.Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace 2.在Android中可以引入其他字体 . 复制代码 代码如下: <?xml versio ...
- Android中自定义veiw使用Java中的回调方法
//------------------MainActivity----中---------------------------------- import android.os.Bundle;imp ...
- Android中的Activity
Android四大组件 活动(Activity) 广播接收者(BroadCastReceiver) 服务(Service) 内容提供者(Contentprovider) Activity 先来看And ...
- Android中自定义组合控件
Android中自定义控件的情况非常多,一般自定义控件可以分为两种:继承控件及组合控件.前者是通过继承View或其子类,重写方法实现自定义的显示及事件处理方式:后者是通过组合已有的控件,来实现结构的简 ...
- Android中自定义ListView实现上拉加载更多和下拉刷新
ListView是Android中一个功能强大而且很常用的控件,在很多App中都有ListView的下拉刷新数据和上拉加载更多这个功能.这里我就简单记录一下实现过程. 实现这个功能的方法不止一个,Gi ...
随机推荐
- AngularJS - 路由入门
我们有很多方法让一个视图随着用户的操作进行变化. 但是,只是单单一个视图就要满足所有的需求会让代码变得非常复杂. 也许我们可以使用ng-include来引用各种模板,但这只限于部分场景. 于是我们可以 ...
- CSS3——3D效果
1.效果1 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" c ...
- 问问题_Java一次导出百万条数据生成excel(web操作)
需求:在web页面操作,一次导出百万条数据并生成excel 分析: 1.异步生成Excel,非实时,完成后使用某种方式通知用户 2.生成多个excel文件,并打包成zip文件,因为一个excel容纳不 ...
- 使用TransactionScopeOption 管理事务流
可通过调用一个方法来嵌套事务范围,该方法在使用其自己范围的方法中使用 TransactionScope,下面示例中的 RootMethod 方法就是前者这样的方法. void RootMethod() ...
- 【HDU 5115】Dire Wolf
题意 n只狼排成一行,每次击败第i只狼需要ai+bi-1+bi+1代价,击败后,相当于出列了,与i相邻两只狼成了相邻的.求击败所有狼的最小总代价. 分析 我开始一直以为是个环TAT.. 区间dp,dp ...
- Day4_计算器
read me 1.构造三个函数,乘除(mad),加减(aas),去括号(par): 2.获取表达式字符串之后,判断是否包含“+-*/()”等字符,包含则下一步3:不包含,返回字符串: 3.par 函 ...
- Oracle查看锁表
查看锁表进程SQL语句1: select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, a ...
- 4.Android下拉列表框spinner学习
下拉列表框被广泛使用,诸如淘宝.京东等手机端经常可以看到这个部件身影,今天就来学习下它. 首先布局文件增加代码:如图 接下来在values下增加arrays.xml 如图 ...
- 项目总结—jQuery EasyUI- DataGrid使用
http://blog.csdn.net/zwk626542417/article/details/18839349 概要 jQuery EasyUI是一个基于jquery的集成了各种用户界面的框架, ...
- Fedora 20下配置samba服务器
1 安装samba [root@localhost ~]# yum –y install samba ← 通过网络安装samba yum -y install samba-client // ...