- 浏览: 85261 次
- 性别:
- 来自: 福建
文章分类
- 全部博客 (64)
- android (28)
- androidApp (1)
- GphonePlay (0)
- [随笔分类][00]JavaScript (2)
- [随笔分类][01]Spring (3)
- [随笔分类][02]Hibernate (4)
- [随笔分类][03]EXT (4)
- [随笔分类][04]项目工程 (0)
- [随笔分类][06]数据库 (1)
- [随笔分类][07]软件使用 (5)
- [随笔分类][09]Ophone (1)
- [随笔分类][08]SSH整合 (3)
- [随笔分类][13]生活随笔 (1)
- [随笔分类][15]架构与设计 (2)
- [随笔分类][16]Weekly Updates (0)
- [随笔分类][17]自我提高 (2)
- [随笔分类][18]中间件 (1)
- [随笔分类][20]测试 Debug Junit (1)
- [随笔分类][21]软件工程 (1)
- [随笔分类][22]团队合作与管理 (1)
最新评论
-
lcyaiym:
不错 ,我正在研究这个问题了。
使用Intent Filter来响应隐式Intent -
qiaoweishu:
精辟深刻,很是受益!
软件开发的精益理念 -
qiaoweishu:
吟安一个字,捏断数径须!受教了!
怎样成为优秀的软件模型设计者 -
lnx1824:
先巩固现有的j2ee,过段时间再来学习!
android HelloWord -
gryphone:
似乎并不存在实际上的匿名 其实系统也是按照对应的string ...
Android如何解析Intent Filter
Android通过终止、重启应用程序来重新加载资源文件,以做到对语言、区域和硬件实时变化的支持。
它的默认的行为不是总是方便和令人满意的,尤其当配置变化(如屏幕方向和键盘可视)、用户旋转设备或划出键盘等。你可以通过监测和响应定制你的应用程序来对这些变化作出响应。
为了能让Activity能监听实时的配置变化,需要在manifest节点里添加“android:configChanges”特性,指定你要处理的配置变化事件。
接下来的列表给出了你可以指定的配置变化的事件值:
❑ orientation 屏幕在纵向和横向间旋转。
❑ keyboardHidden 键盘显示或隐藏。
❑ fontScale 用户变更了首选的字体大小。
❑ locale 用户选择了不同的语言设定。
❑ keyboard 键盘类型变更,例如手机从12键盘切换到全键盘
❑ touchscreen或navigation 键盘或导航方式变化,一般不会发生这样的事件。
你可以选择捕获多个事件,通过在各事件值间使用“|”。
接下来的代码片段显示了Activity要捕获屏幕方向和键盘可视的事件:
<activity android:name=”.TodoList” android:label=”@string/app_name” android:theme=”@style/TodoTheme” android:configChanges=”orientation|keyboard”/>
增加这个特性就会强制应用程序在指定的配置变化时不用再重新启动,而是触发Activity中的onConfigurationChanged方法。如下面的代码片段所示,override这个方法去捕获配置变化,通过传入的Configuration 对象的值进行合适的处理。需要提醒的是需要调用父类的方法,并且要重新加载Activity使用的资源,以防有变更。
@Override public void onConfigurationChanged(Configuration _newConfig) { super.onConfigurationChanged(_newConfig); [ ... 基于资源值更新UI ... ] if (_newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { [ ... 对不同的屏幕方向作出处理 ... ] } if (_newConfig.keyboardHidden == Configuration.KEYBOARDHIDDEN_NO) { [ ... 对键盘可见作出处理 ... ] } }
当onConfigurationChanged 被调用时,Activity的资源变量都已经用新的值进行了更新,所以它们是安全的。
任何你没有显式指明的配置变化事件,都将由应用程序捕获,而且仍然会引起应用程序的重启,而不会调用onConfigurationChanged 方法。
发表评论
-
Android如何解析Intent Filter
2009-08-23 19:31 2233匿名性质的运行时绑定 ... -
使用Intent Filter来响应隐式Intent
2009-08-23 19:14 4047如果一个Intent请求在一片数据上执行一个动作,Androi ... -
Linkify介绍
2009-08-23 17:21 3389Linkify是一个辅助类,通过RegEx样式匹配,自动地在T ... -
动态更新菜单项与处理菜单选择
2009-08-23 15:55 1514public boolean onOptionsItemS ... -
菜单项选项
2009-08-23 15:35 1262正如你所熟悉的那样,Android支持大多数传统的菜单项选项, ... -
Android菜单系统介绍
2009-08-23 15:09 1573如果你曾经尝试用手写 ... -
Layouts介绍
2009-08-23 15:05 1357Layout管理器(一般称“layouts”)是ViewGro ... -
使用系统资源
2009-08-23 15:00 907Android本体应用程序具体 ... -
在资源中引用资源
2009-08-23 14:59 832在资源中引用资源 你可以在其他XML资源中通过特性来引 ... -
在代码中使用资源
2009-08-23 14:58 1210在代码中使用资源 你可以在代码中通过R静态类使用资源 ... -
Animations
2009-08-23 14:55 923Animations Android支持2种类型的动画 ... -
Layouts
2009-08-23 14:53 826Layouts Layout资源是通过在XML中设计U ... -
Styles和Themes
2009-08-23 14:51 732Styles和Themes 通过指定Views的特性值 ... -
Drawables
2009-08-23 14:50 1084Drawables Drawable资源包括位 ... -
Values
2009-08-23 14:46 1343<?xml version=”1.0” encoding ... -
资源具体化
2009-08-23 14:44 784不管你使用什么开发环境,一个良好的习惯就是保存非代码的资源(像 ... -
理解应用程序优先级和进程状态
2009-08-23 14:43 1044杀死哪个进程来回收资源由进程中的应用程序的优先级决定的。应用程 ... -
使用Manifest Editor
2009-08-23 14:42 1047ADT插件程序包含了一个可视化的Manifest Editor ... -
应用程序Manifest介绍
2009-08-23 14:30 1496每一个 Androi ... -
android 组件之广播接收( Broadcast receiver )
2009-08-22 16:06 4180Broadcast receivers 广播接收? ...
相关推荐
4. **自动加载与重启**:`nginx-conf-watcher`会在检测到配置文件变化时,自动执行`nginx -s reload`命令,从而实现配置的实时加载。如果加载失败,通常是因为配置文件有语法错误,此时`nginx-conf-watcher`可能会...
中职网络搭建DCN4600交换机配置手册中职网络搭建DCN4600交换机配置手册中职网络搭建DCN4600交换机配置手册中职网络搭建DCN4600交换机配置手册中职网络搭建DCN4600交换机配置手册中职网络搭建DCN4600交换机配置手册...
Outlook自动配置脚本是一种高效的方法,用于批量或快速设置Microsoft Outlook客户端的电子邮件账户,而无需手动输入所有必要的服务器信息和设置。这个脚本通常基于Visual Basic Script (VBS),利用Outlook对象模型来...
只有进入配置模式后才能改变交换机的配置。 3. 添加 VLAN 并激活 新的交换机一般情况下只设置了 VLAN 1,添加 VLAN 后,交换机的 VLAN 才可用。新添加的 VLAN 不激活也是不通的,相当于处于关闭状态,只有处于激活...
例如,当系统需要改变工作频率或功率等级时,可能需要重新加载配置文件。 总之,HMC7044配置上位机简化了射频开关的参数设置,生成的配置文件可直接应用于STM32的SPI通信中,实现对HMC7044的精确控制。理解并掌握这...
在C#编程中,动态改变配置文件信息是一个常见的需求,特别是在需要在运行时根据环境或用户需求调整应用程序设置时。本文将深入探讨如何利用C#处理XML格式的配置文件,以便进行读取、修改和保存操作。 配置文件通常...
这个"struts2配置文件改变DEMO"是用于展示如何修改Struts2的配置文件来改变应用的运行方式。 首先,我们要了解Struts2的核心配置文件——`struts.xml`。这是一个XML文件,通常位于`src/main/resources`或`WEB-INF/...
扫频功能可能是通过改变FTW或分频系数实现的,以连续改变输出频率,检测不同频率上的信号特性。 总结来说,ADF4351的配置涉及到多个参数的精确设定,这需要对器件的内部结构和工作原理有深入理解。通过C51编程,...
例如,你可以通过修改`config.pro`来改变以下设置: 1. **界面定制**:如字体大小、颜色方案、快捷键等,可以按照个人喜好和工作效率进行调整。 2. **性能优化**:配置文件可以设定内存使用、模型缓存大小等,以...
在实际项目应用中经常会用到定时任务,可以通过quartz和spring的简单配置即可完成,但如果要改变任务的执行时间、频率,废弃任务等就需要改变配置甚至代码需要重启服务器,这里介绍一下如何通过quartz与spring的组合...
6. **Spring Cloud Bus**:在某些示例中,可能会用到 Spring Cloud Bus 来实现实时配置更新的广播。当配置在 Config Server 上改变时,Bus 可以通知所有相关的客户端应用进行自动刷新。 7. **API 和 Web UI**:...
STM32 CUBEMX是ST公司提供的一个强大的软件工具,用于快速配置和初始化STM32微控制器。在这个“STM32 CUBEMX主从定时器配置PWM任意相位可调,占空比可调工程包方法二”中,我们将深入探讨如何使用CUBEMX来设置主从...
例如,在初始化程序中,用户可以通过写入特定的寄存器来改变配置字节中的设置。但这种方式在操作上相对复杂,需要开发者对微控制器的内部结构和编程细节有深入的理解。 总而言之,STM8S的配置字节OPTION BYTE是微...
### 极点配置与观测器设计 #### 一、引言 在现代控制理论中,极点配置与观测器设计是非常重要的两个概念。极点配置主要用于改进系统的动态响应特性,而观测器设计则是为了估计系统状态,从而实现更好的控制。本文将...
这个库使得在运行时对配置进行【增删改查】操作变得简单,同时支持动态加载,从而实现配置的实时更新。 一、Apache Commons Configuration库介绍 Apache Commons Configuration库是Apache软件基金会的一个项目,...
### CentOS 7系统下Rsync+Sersync实时数据同步配置知识点 #### CentOS7操作系统概述 CentOS 7(Community ENTerprise Operating System)是基于Red Hat Enterprise Linux构建的免费企业级操作系统。它是由社区驱动...
配置管理能够给项目带来的好处包括保证配置项的完整和可追溯性,使团队成员可以拿到所需工件的所需版本,变更控制使团队每个人都了解到谁改变了哪些东西,整个团队的信息对称等。 6. 作为一个配置管理工程师,哪些...
配置DR选举时,可以调整接口优先级以改变选举结果;配置负载分担时,需开启负载分担功能并设置等价路由的优先级和负载分担模式。 总的来说,华为路由器中的OSPF配置实例丰富多样,覆盖了OSPF协议的各个方面,为网络...
### QC配置详细图解知识点解析 #### 一、权限配置详解 **1. Requirements权限角色分配** - **P_Developeradmin权限分配** - 图片示例:此部分通过图片展示了P_Developeradmin角色在Requirements模块下的具体权限...
3. 配置推送:当配置发生改变时,配置中心会主动推送给订阅了该配置的客户端,确保所有服务节点的配置保持一致。 三、配置管理流程 1. 创建配置:开发者在配置中心创建新的配置项,包括键值对、注释等信息,可以以...