1.自定义Activity显示样式

先在res/values下建colors.xml文件,写入:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <!-- 设置透明度为56%(9/16)左右 -->
  4. <color name="transparent">#9000</color>
  5. </resources>

这个值设定了整个界面的透明度,为了看得见效果,现在设为透明度为56%(9/16)左右。

再在res/values/下建styles.xml,设置程序的风格

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <mce:style name="Transparent"><!--
  4. 设置背景 -->
  5. <item name="android:windowBackground">@color/transparent</item>
  6. <!-- 设置底层可见 -->
  7. <item name="android:windowIsTranslucent">true</item>
  8. <!-- 设置跳转效果 -->
  9. <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
  10. --></mce:style><style name="Transparent" mce_bogus="1"> 设置背景 -->
  11. <item name="android:windowBackground">@color/transparent</item>
  12. <!-- 设置底层可见 -->
  13. <item name="android:windowIsTranslucent">true</item>
  14. <!-- 设置跳转效果 -->
  15. <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
  16. </style>
  17. </resources>

注:mce部分为发帖是自动生成的,实际不需要。

最后一步,把这个styles.xml用在相应的Activity上。即在AndroidManifest.xml中的任意<activity>标签中添加 
android:theme = "@style/transparent" 
如果想设置所有的activity都使用这个风格,可以把这句标签语句添加在<application>中。 
最后运行程序,哈哈,是不是发现整个界面都被蒙上一层半透明了。最后可以把背景色#9000换成#0000,运行程序后,就全透明了,看得见背景下的所有东西可以却都操作无效。呵呵....

2.将Activity以Dialog的形式显示并自定义样式

先在res/drawable下建bgconfig.xml文件,写入:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <solid android:color="#ffffff" />
  4. <stroke android:width="3dp" color="#000000" />
  5. <corners android:radius="3dp" />
  6. <padding android:left="3dp" android:top="3dp" android:right="3dp"
  7. android:bottom="3dp" />
  8. </shape>

再在res/values/下建styles.xml,设置程序的风格

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <!-- 设置样式 -->
  4. <mce:style name="Theme.MyActivity" parent="android:style/Theme.Dialog" mce_bogus="1" mce_bogus="1"><!--
  5. <item name="android:windowBackground">@drawable/bgconfig</item>
  6. --></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>
  7. </style>
  8. </resources>

注:mce部分为发帖是自动生成的,实际不需要。

最后一步,把这个styles.xml用在相应的Activity上。即在AndroidManifest.xml中的任意<activity>标签中添加 
android:theme = "@style/transparent" 
如果想设置所有的activity都使用这个风格,可以把这句标签语句添加在<application>中。

3.设置窗口大小和位置

    1. WindowManager m = getWindowManager();
    2. Display d = m.getDefaultDisplay();  //为获取屏幕宽、高
    3. LayoutParams p = getWindow().getAttributes();  //获取对话框当前的参数值
    4. p.height = (int) (d.getHeight() * 1.0);   //高度设置为屏幕的1.0
    5. p.width = (int) (d.getWidth() * 0.7);    //宽度设置为屏幕的0.8
    6. p.alpha = 1.0f;      //设置本身透明度
    7. p.dimAmount = 0.0f;      //设置黑暗度
    8. getWindow().setAttributes(p);     //设置生效
    9. getWindow().setGravity(Gravity.RIGHT);       //设置靠右对齐

Android中自定义Activity和Dialog的位置大小背景和透明度等demo的更多相关文章

  1. Android中自定义Activity和Dialog的位置大小背景和透明度等

    1.自定义Activity显示样式 先在res/values下建colors.xml文件,写入: view plainprint? 1. <?xml version="1.0" ...

  2. 在Android中动画移动一个View的位置,采用Scroller类实现Android动画之 View移动

    在Android中动画移动一个View的位置,采用Scroller类实现 今天说最近自己遇到的一个问题,就是要用动画效果来移动一个VIew的位置. 这个具体的情况是,需要做一个SlidingMenu的 ...

  3. Android中半透明Activity效果另法

    Android中的Activity有没有类似于像Windows程序样的窗口式显示呢? 答案当然是有. 下图就是一个窗口式Activity的效果图: 下面就说说实现过程: 首先看看AndroidMani ...

  4. [转]Android中自定义checkbox样式

    android中自定义checkbox的图片和大小   其实很简单,分三步: 1.在drawable中创建文件checkbox_selector.xml: <?xml version=" ...

  5. 转--Android中自定义字体的实现方法

    1.Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace 2.在Android中可以引入其他字体 . 复制代码 代码如下: <?xml versio ...

  6. Android中自定义veiw使用Java中的回调方法

    //------------------MainActivity----中---------------------------------- import android.os.Bundle;imp ...

  7. Android中的Activity

    Android四大组件 活动(Activity) 广播接收者(BroadCastReceiver) 服务(Service) 内容提供者(Contentprovider) Activity 先来看And ...

  8. Android中自定义组合控件

    Android中自定义控件的情况非常多,一般自定义控件可以分为两种:继承控件及组合控件.前者是通过继承View或其子类,重写方法实现自定义的显示及事件处理方式:后者是通过组合已有的控件,来实现结构的简 ...

  9. Android中自定义ListView实现上拉加载更多和下拉刷新

    ListView是Android中一个功能强大而且很常用的控件,在很多App中都有ListView的下拉刷新数据和上拉加载更多这个功能.这里我就简单记录一下实现过程. 实现这个功能的方法不止一个,Gi ...

随机推荐

  1. 第二章:Javascript词法结构

    编程语言的词法结构是一套基础性的规则,用来描述你如何编写这门语言.作为语法的基础,它规定了变量名是怎么样的,如何写注释,以及语句之间是如何区分的.本节用很短的篇幅来介绍javascript的词法结构. ...

  2. HashMap的一些用法

    1.HashMap的遍历 //这个是通过 迭代器iterator 来实现 HashMap的遍历 Iterator iterator=hashMap.keySet().iterator(); while ...

  3. navjs

    'use strict';define([ 'jquery'], function($) { var nav = { init : function() { $("#burger-menu& ...

  4. iOS边练边学--GCD的基本使用、GCD各种队列、GCD线程间通信、GCD常用函数、GCD迭代以及GCD队列组

    一.GCD的基本使用 <1>GCD简介 什么是GCD 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数   GCD的优势 G ...

  5. if...else语句的应用

    用户输入身高判断身体状况的题目 题目中用到的公式:体重=身高-100±3»»推出:3>体重-身高+100>-3 namespace ConsoleApplication2 { class ...

  6. js简单的工厂模式

    <!DOCTYPE html> <html> <head> <title></title> </head> <body&g ...

  7. structs环境搭建

    (1)<s:fielderror />放在JSP中,如果没在web.xml中配置filter相关内容,会有The Struts dispatcher cannot be found.从而显 ...

  8. BZOJ-1024 生日快乐 DFS+一丝sb的数学思考

    1024: [SCOI2009]生日快乐 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 1948 Solved: 1391 [Submit][Statu ...

  9. SpringMVC配置数据库连接池

    http://www.cnblogs.com/coqn/archive/2012/08/15/SpringMvc%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E9%85%8 ...

  10. nginx负载均衡的配置方法

    upstream www.***.com { server ; server ; server ; } server { listen ; server_name www.***.com; #char ...