Android中的Activity有没有类似于像Windows程序样的窗口式显示呢?

答案当然是有。

下图就是一个窗口式Activity的效果图:

下面就说说实现过程:

首先看看AndroidManifest.xml

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   3:       package="com.hi.braincol.local"
   4:       android:versionCode="1"
   5:       android:versionName="1.0">
   6:     <uses-sdk android:minSdkVersion="8" />
   7:  
   8:     <application android:icon="@drawable/icon" android:label="@string/app_name">
   9:         <activity android:name=".MiniActivity"
  10:                      android:theme="@style/Translucent"
  11:                   android:label="@string/app_name">
  12:             <intent-filter>
  13:                 <action android:name="android.intent.action.MAIN" />
  14:                 <category android:name="android.intent.category.LAUNCHER" />
  15:             </intent-filter>
  16:         </activity>
  17:  
  18:     </application>
  19: </manifest>
第10行:
android:theme="@style/Translucent"
这个就是关键,只要将个这个style设置为窗口式的,那么MiniActivity就会是窗口式的了。
下面的就是这个style的代码:
<?xml version="1.0" encoding="UTF-8"?>
<resources>
  <style name="Translucent" parent="@android:style/Theme.Translucent">
      <item name="android:windowBackground">@drawable/panel_background</item>
      <item name="android:windowNoTitle">true</item>
      <item name="android:windowIsFloating">true</item>
      <item name="android:windowIsTranslucent">true</item>
      <item name="android:windowContentOverlay">@null</item>
      <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
      <item name="android:backgroundDimEnabled">true</item>
  </style>
</resources>
这样就行了,实现起来还是很简单的

http://www.cnblogs.com/hibraincol/archive/2011/08/28/2156310.html


在做项目时,常需要用到对话框之类的效果,然而对话框不容易写,所以就想写个半透明的Activity来代替对话框效果,这样的好处至少有三个:

一:布局容易

二:各种控件容易控制

三:代码简练:不至于将控制对话框的代码写在一坨,各种控制也不用写在一坨,易于维护

而现在在网上搜索半透明的Activity时,都是需要在style中写样式,在color中定义颜色,当然,最后还得在Mainfest中配置好,结果一个小小的半透明Activity效果写的好零乱,而且网上来来去去就那几种方法,看得蛋疼,因此为了装逼,我介绍一种简易的半透明Activity效果:

步骤:

一:在Activity的布局的根标签中写入透明颜色:

android:background="#80000000"


二:在清单文件中相应的activity中配置:

android:theme="@android:style/Theme.Translucent.NoTitleBar"

ok,就这两步,

这样的效果好处在于:

一:简单,就两行代码

二:易修改,就两行代码,只需修改一处即可。

效果图:

详细代码:

一:布局:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:background="#80000000" >
  6. <LinearLayout
  7. android:layout_width="match_parent"
  8. android:layout_height="wrap_content"
  9. android:layout_alignParentBottom="true"
  10. android:layout_marginBottom="40dp"
  11. android:layout_marginLeft="18dp"
  12. android:layout_marginRight="18dp"
  13. android:orientation="vertical" >
  14. <TextView
  15. android:id="@+id/tv_delete"
  16. android:layout_width="match_parent"
  17. android:layout_height="wrap_content"
  18. android:background="@drawable/rect_delete_red"
  19. android:gravity="center"
  20. android:paddingBottom="15dp"
  21. android:paddingTop="15dp"
  22. android:text="删除"
  23. android:textColor="#FFFFFF"
  24. android:textSize="20sp" />
  25. <TextView
  26. android:id="@+id/tv_cancel"
  27. android:layout_width="match_parent"
  28. android:layout_height="wrap_content"
  29. android:layout_marginTop="20dp"
  30. android:background="@drawable/rect_delete_gray"
  31. android:gravity="center"
  32. android:paddingBottom="15dp"
  33. android:paddingTop="15dp"
  34. android:text="取消"
  35. android:textColor="#FFFFFF"
  36. android:textSize="20sp" />
  37. </LinearLayout>
  38. </RelativeLayout>

二:清单文件:

  1. <activity android:name="com.itcode.DialogActivity"
  2. android:theme="@android:style/Theme.Translucent.NoTitleBar" ></activity>

http://blog.csdn.net/sunalongl/article/details/20544177

Android中半透明Activity效果另法的更多相关文章

  1. Android中的Activity

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

  2. Android中实现activity的页面跳转并传值

    一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求. 本次我们就讲一下,Android中页面跳转以及传值的几种方式 ...

  3. Android中实现Activity的启动拦截之----实现360卫士的安装应用界面

    第一.摘要 今天不是周末,但是我已经放假了,所以就开始我们的技术探索之旅,今天我们来讲一下Android中最期待的技术,就是拦截Activity的启动,其实我在去年的时候,就像实现这个技术了,但是因为 ...

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

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

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

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

  6. Android中实现Activity的透明背景效果

    实现方式一(使用系统透明样式) 通过配置 Activity 的样式来实现,在 AndroidManifest.xml 找到要实现透明效果的 Activity,在 Activity 的配置中添加如下的代 ...

  7. Android中的Activity四种启动模式(launchMode)

    转载:http://blog.csdn.net/cjjky/article/details/7533110          我们在开发项目的过程中,会涉及到该应用中多个Activity组件之间的跳转 ...

  8. Android中的动画效果

    动画的种类 透明动画alphaAnimation 在代码中配置动画: findViewById(R.id.btnAnimMe).setOnClickListener(new View.OnClickL ...

  9. Android中的Activity相关知识总结

    一.什么是Activity? 简单理解:Activity是Android组件中最基本也是最为常见用的四大组件之一.是一个与用户交互的系统模块,一个Activity通常就是一个单独的屏幕(页面), 它上 ...

随机推荐

  1. Java实现SOAP协议 之 HelloWorld

    Java实现SOAP协议 之 HelloWorld SOAP是把基于HTTP的WEB技术与XML的灵活性和可扩展性组合在了一起. 准备: 1. 准备一个web server.Tomcat 下载地址 h ...

  2. cf509A Maximum in Table

    A. Maximum in Table time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  3. 百度搜索URL参数 搜索关键字

    http://www.baidu.com/s?wd=关键字 wd(Keyword):查询的关键词: http://www.baidu.com/s?wd=关键字&cl=3 cl(Class):搜 ...

  4. HBase 事务和并发控制机制原理

    作为一款优秀的非内存数据库,HBase和传统数据库一样提供了事务的概念,只是HBase的事务是行级事务,可以保证行级数据的原子性.一致性.隔离性以及持久性,即通常所说的ACID特性.为了实现事务特性, ...

  5. python遗传算法实现数据拟合

    python据说功能强大,触角伸到各个领域,网上搜了一下其科学计算和工程计算能力也相当强,具备各种第三方包,除了性能软肋外,其他无可指摘,甚至可以同matlab等专业工具一较高下. 从网上找了一个使用 ...

  6. spring中获取Bean

    在测试类中我们获取已经装配给容器的Bean的方法是通过ApplicationContext,即 ApplicationContext ac=new ClassPathXmlApplicationCon ...

  7. [原创作品] web项目构建(一)

    今天开始,将推出web项目构建教程,与<javascript精髓整理篇>一并更新.敬请关注. 这篇作为这一系列开头,主要讲述web项目的构建技术大全.在众多人看来,web前端开发无非就是写 ...

  8. Android利用setLayoutParams在代码中调整布局(Margin和居中)

    我们平常可以直接在xml里设置margin,如: <ImageView android:layout_margin="5dip" android:src="@dra ...

  9. 数据库(SQLITE3函数总结): sqlite3_open, sqlite3_exec, slite3_close,sqlite3_prepare_v2,sqlite3_column_text,

    Sqlite3 的确非常好用.小巧.速度快.近期研究它,有一些收获,这里把我对 sqlite3 的研究列出来,以备忘记. 导入SQLLite library并引入头文件. libsqlite3.dyl ...

  10. android中广播接收SD卡状态

    mReceiver = new BroadcastReceiver() { //add by mengmeng.chen begin public void onReceive(Context con ...