activity是android中使用非常平凡的一种组件,我们除了需要掌握activity中的生命周期以外,还需要掌握activity中的其

他设置。

1.activity 中主题的设置

  android中我们可以通过AndroidManifest.xml中设置activity中的主题,其实android提供了许多自带的主题样式,如下:

android:theme="@android:style/Theme.Dialog"   将一个Activity显示为能话框模式 
android:theme="@android:style/Theme.NoTitleBar"  不显示应用程序标题栏 
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  不显示应用程序标题栏,并全屏 
android:theme="Theme.Light"  背景为白色 
android:theme="Theme.Light.NoTitleBar"  白色背景并无标题栏 
android:theme="Theme.Light.NoTitleBar.Fullscreen"  白色背景,无标题栏,全屏 
android:theme="Theme.Black"  背景黑色 
android:theme="Theme.Black.NoTitleBar"  黑色背景并无标题栏 
android:theme="Theme.Black.NoTitleBar.Fullscreen"    黑色背景,无标题栏,全屏 
android:theme="Theme.Wallpaper"  用系统桌面为应用程序背景 
android:theme="Theme.Wallpaper.NoTitleBar"  用系统桌面为应用程序背景,且无标题栏 
android:theme="Theme.Wallpaper.NoTitleBar.Fullscreen"  用系统桌面为应用程序背景,无标题栏,全屏 
android:theme="Translucent" 
android:theme="Theme.Translucent.NoTitleBar"  透明,无标题栏
android:theme="Theme.Translucent.NoTitleBar.Fullscreen"  透明,无标题栏,并且全屏显示
android:theme="Theme.Panel"  
android:theme="Theme.Light.Panel"

我们可以通过需求来设置不同的主题。

2.android 中activity横竖屏设置

由于手机可以支持横竖屏切换,当android进行切换时可以回对页面中的布局照成影响,当在AndroidManifest.xml文件中定义了android:screenOrientation="portrait",就表示当我们切换横竖屏的时候,屏幕的内容始终以竖屏显示,而不会根据屏幕的方向来显示内容。而设置为android:screenOrientation="landscape"则为横屏显示。

3.android中activity中launchMode属性的几种值说明

launchMode 中的是四种状态

standard:每次都创建一个实例,默认将Activity加入到当前Task。

singleTop:启动的不是当前的Activity的话,则创建一个实例,并加入当前Task,否则抛弃 ,Intent不做任何反应
singleTask:只有一个Task,不会重新创建已存在的Activity。
singleInstance:一个Task里只有一个Activity。启动Acivity时,会重新创建一个Task,并把Activity加入新建的Task。

例如:如果用户长时间的离开一个任务,那么系统会清除这个任务根Activity以外的所有Activity。当用户再次返回这个任务时,只有根Activity被存储。系统行为的这种方式是因为经过长时间以后,用户在返回这个任务之前可能已经放弃它们的作业,而开始了某些新的任务。

你能够使用一些Activity属性来修改这种行为
1.alwaysRetainTaskState
如果这个属性在一个任务的根Activity中被设置为“true”,那么像上面描述的那样的默认行为就不会发生。即使是长时间之后,这个任务也会在它的堆栈中保留所有的Activity。
2.clearTaskOnLaunch
如果这个属性在一个任务的根Activity中被设置为“true”,那么无论用户什么时候离开和返回这个任务,堆栈都会被清除到根Activity的位置。换句话说,它与alwaysRetainTaskState属性相反,用户总是返回到任务的初始状态,即使只离开这个任务一会儿。
3.finishOnTaskLaunch
这个属性点像clearTaskOnLaunch属性,但是它只操作单个Activity,而不是整个任务。它也能导致任何Activity离开,包括根Activity。当这个属性设置为“true”时,这个Activity只保持着这个任务中当前会话那部分。如果用户离开,然后再返回这个任务,那么它就不再存在了。

activity属性_ _activity 属性说明的更多相关文章

  1. JQuery中操作元素的属性_对象属性

    我们主要是通过attr去获取元素的属性: 看body内容: <body> <p> 账号:<input type="text" id="una ...

  2. HTML DOM firstChild lastChild nextSibling previousSibling 属性_获取属性值的undefined问题

    <html> <head> <title>HTML示例</title> <style type="text/css"> ...

  3. _.属性和self.属性,我遇到的那些坑

    只怪当时_.属性和self.属性当时没有研究透,所以为自己掉入坑里埋下了伏笔.下面从我的坑开始说起: 我写了个懒加载,重写了一个数组属性的get方法,在get方法里面创建了一个数组来获取数据,那么调用 ...

  4. Struts2配置文件_常量属性_独立测试分析

    <constant name="struts.devMode" value="true" /> 设置开发模式,可以了解详细信息,该属性指定视图标签默 ...

  5. JS_object添加变量属性_动态属性

    总结,给对象动态添加变量属性的方法如下: obj[变量]=变量值; 备注: obj.属性=属性值 ; obj={属性:属性值}; 这两种方式添加的属性都不能使用变量作为属性. 犯过的错误: var t ...

  6. DOM中操作结点的属性_操作元素结点的样式

    有俩种方式操作结点的属性. 首先我们需要先获取所要操作的结点元素: var uname=document.getElementById("uname"); var gan=unam ...

  7. Python笔记(十八)_私有属性、实例属性、类属性

    私有属性 如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线__,就变成了一个私有属性,只有内部可以访问,外部不能直接访问或修改. 这样就确保了外部代码不能随意修改对象内部的状态,这样通过 ...

  8. Python 进阶_OOP 面向对象编程_实例属性和方法

    目录 目录 构造器和解构器 构造器 __init__ 真构造器 __new__ 解构器 __del__ 实例方法 Python 中的 抽象方法 实例属性 查看实例属性 实例属性和类属性的区别 访问不可 ...

  9. Python 进阶_OOP 面向对象编程_类属性和方法

    目录 目录 类属性 调用类属性 查看类属性 特殊的类属性 类方法 真构造器 __new__ 类属性 在理解类属性之前要先搞清楚 实例属性 和 函数属性 之间的区别: 1. 实例属性:指的是实例化类对象 ...

随机推荐

  1. Git入门指南十一:Git branch 分支与合并分支

    十五. Git branch 分支 查看当前有哪些branch bixiaopeng@bixiaopengtekiMacBook-Pro xmrobotium$ git branch * master ...

  2. Unity学习资源

    NGUI文档及视频: http://www.tasharen.com/forum/index.php?topic=6754 动态更新的解决方案: http://game.ceeger.com/foru ...

  3. PHP-通过strace定位故障原因

    俗话说:不怕贼偷,就怕贼惦记着.在面对故障的时候,我也有类似的感觉:不怕出故障,就怕你不知道故障的原因,故障却隔三差五的找上门来. 十一长假还没结束,服务器却频现高负载,Nginx出现错误日志: co ...

  4. PHP包名解释

    下载地址:        http://windows.php.net/download#php-5.5 下载到的php*.zip各项文件说明: php-5.6.26-nts-Win32-VC11-x ...

  5. OpenJudge计算概论-找最大数序列

    /*===================================== 找最大数序列 总时间限制: 1000ms 内存限制: 65536kB 描述 输入n行(n 不大于 30),每行不超过10 ...

  6. [mybatis] mybatis错误:Invalid bound statement (not found)

    点击菜单抛出异常: org.springframework.web.util.NestedServletException: Request processing failed; nested exc ...

  7. 每日学习心得:Linq解决DataTable按照某一列的值排序问题/DataTable 导出CSV文件/巧用text-overflow解决数据绑定列数据展示过长问题

    2013-8-5 1 Linq解决DataTable按照某一列的值排序 在之前的总结中提到过对拼接而成的复合的DataTable按照某一列值的大小排序,那个主要的思想是在新建表结构时将要排序的那一列的 ...

  8. (转)【Android测试工具】03. ApkTool在Mac上的安装和使用(2.0版本)

    http://blog.csdn.net/wirelessqa/article/details/8997168 http://code.google.com/p/android-apktool/dow ...

  9. Struts2 - Check Login Interceptor

    Struts2使用Interceptor做用户登陆检查: 1)新增一个bean: User.java package com.my.beans; import java.util.Date; impo ...

  10. Value Dispose() cannot be called while doing CreateHandle().

    在backgroundWorker run之前show出了一个窗体_frm. _frmpw = new FrmPleaseWait(); _frmpw.SetMsg("正在请求") ...