android自定义Activity窗口大小(theme运用)
http://gundumw100.iteye.com/blog/906195
正常情况下,我们开发的应用程序都会上占满整个屏幕,那么怎么样才能开发出自定义窗口大小的的程序呢?如下图所示:

实现起来非常简单。
第一步,创建一个背景配置文件float_box.xml,放到res/drawable下,如下所示(如看不懂可查看本站:):
- <?xml version="1.0" encoding="utf-8"?>
- <!--
- ** Copyright 2010, Ideasandroid
- -->
- <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="10dp" android:top="10dp" android:right="10dp"
- android:bottom="10dp" />
- </shape>
第二步,定义一个对话框样式,放到res/values/styles.xml,如下所示:
- <?xml version="1.0" encoding="utf-8"?>
- <!-- Copyright (C) 2010 IdeasAndroid
- -->
- <resources>
- <!-- 定义一个样式,继承android系统的对话框样式 android:style/Theme.Dialog-->
- <style name="Theme.FloatActivity" parent="android:style/Theme.Dialog">
- <!-- float_box为我们定义的窗口背景-->
- <item name="android:windowBackground">@drawable/float_box</item>
- </style>
- </resources>
第三步,创建一个视图配置文件res/layout/float_activity.xml,一个ImageView和一个TextView,如下所示:
- <?xml version="1.0" encoding="utf-8"?>
- <!-- Copyright (C) 2010 IdeasAndroid
- -->
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <ImageView
- android:id="@+id/ideasandroidlogo"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentTop="true"
- android:src="@drawable/ideasandroid"
- />
- <TextView android:layout_width="wrap_content" android:text="@string/ideasandroidIntr"
- android:layout_height="wrap_content"
- android:layout_below="@id/ideasandroidlogo"
- android:textColor="@android:color/black"
- />
- </RelativeLayout>
第四步创建我们的Activity,如下所示:
- public class FloatActivityDemo extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //先去除应用程序标题栏 注意:一定要在setContentView之前
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- //将我们定义的窗口设置为默认视图
- setContentView(R.layout.float_activity);
- }
- }
最后一步,更改应用程序配置文件AndroidManifest.xml,将我们刚才创建的样式应用到我们的Activity上,如下所示:
- <activity android:name=".FloatActivityDemo" android:theme="@style/Theme.FloatActivity">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
自己试一试吧!
Demo下载地址:http://www.ideasandroid.com/android/demo/FloatActivityDemo.rar
android自定义Activity窗口大小(theme运用)的更多相关文章
- android自定义Activity窗体大小
先给大家看图吧: 看,是不是很酷呢,呵呵. 这里我说关键的地方,就是自定义Activity的窗体大小. 这个登录框它不是一个Dialog,而是一个Activity. 如何定义,即把Activity的主 ...
- android自定义activity
今天公司有个需要需要自动弹出界面,而dialog又不符合要求,所以自定义的一个activity的样式 首先在androidmainfest.xml上注册你的activity <activity ...
- Android 自定义Activity的标题栏(Titlebar)
缺省的情况下,通常见到Activity的标题栏(Titlebar)是这样的(红色框内): HandleContacts是Activity的标题.有时候,我们希望能改变一下这样单调的状况.比如,要在标题 ...
- Android 自定义Activity基类与TitleBar
我们在开发App的时候有时候碰到多个界面有一个共同点的时候,比如,都有相同的TitleBar,并且TitleBar可以设置显示的文字.TitleBar上的点击事件,如果给每一个Activity都写一遍 ...
- Android自定义Activity酷炫的动画跳转效果
两个Activity跳转的时候,自定义翻页效果: Intent intent = new Intent(FirstActivity.this, SecondActivity.class); sta ...
- Android 自定义Activity栈对Activity统一管理
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6307239.html public class AppManager { private static St ...
- Android中自定义Activity和Dialog的位置大小背景和透明度等demo
1.自定义Activity显示样式 先在res/values下建colors.xml文件,写入: <?xml version="1.0" encoding="utf ...
- Android中自定义Activity和Dialog的位置大小背景和透明度等
1.自定义Activity显示样式 先在res/values下建colors.xml文件,写入: view plainprint? 1. <?xml version="1.0" ...
- [android] 练习样式主题自定义activity切换动画
主要练习了自定义样式和主题,继承android系统默认的样式并修改,练习xml定义淡入淡出动画 anim/fade_in.xml <?xml version="1.0" en ...
随机推荐
- 今天是学习C#面向过程的最后的一天
今天学习完啦面向过程,可能写法也就是那些,固定不变的,但是程序的写法就是由自己决定······ 今天学习了调用已经存在的方法,就是在.net Framework 中存在的方法,具体今天提到的有这些, ...
- WPS之替换样式
以前写文档需要颜色设置什么的时候,都是遇到的时候,就进行设置,挺烦的,要一直切换. 今天突然想到,既然有替换应该可能也有样式替换,就查了一下,试了试果然可以,以后就这么干了
- LeetCode - Customers Who Never Order
Description: Suppose that a website contains two tables, the Customers table and the Orders table. W ...
- 使用CDN的网络访问过程
CDN是指内容分发网络,在网络各处架设节点服务器,当用户访问时,CDN系统会根据网络流量.到用户的距离等因素将请求导向离用户最近的节点上. 访问过程是: 1.用户向浏览器提供要访问的域名. 2.浏览器 ...
- poj3734 Blocks[矩阵优化dp or 组合数学]
Blocks Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6578 Accepted: 3171 Descriptio ...
- EUI EXML内部类Skin和ItemRenderer
没认真看过...现在试试... EXMl支持内部类 两种支持做为内部类的:Skin和ItemRenderer 优点: 这种最大的好处就是皮肤如果只用一次,不需要单独写成一个exml文件,只需要写在组件 ...
- [USB] Windows USB/DVD Download Tool
此工具为微软官方U盘启动盘制作工具 Windows USB/DVD Download Tool 说明:https://www.microsoft.com/en-us/download/windows- ...
- iOS 8 新特性介绍
来源:nshipster.cn 发布时间:2014-07-06 阅读次数:2152 随便去问任何人,他们都会告诉你WWDC2014是近年来最为激动的回忆. 整个大会没有发布任何新硬件,它是一次史无前例 ...
- JS判断当前是否是IE浏览器,并返回时IE几?
原文参考: https://www.cnblogs.com/liuyanxia/p/5855760.html 具体代码示例: 这里返回的是:如果不是IE浏览器返回 -1 ,返回 7/8/9/10/11 ...
- fiddler win10-1703Failed to register Fiddler as the system proxy
正解 The solution for the Fiddler error of "Failed to register Fiddler as the system proxy" ...