Activity
系统组件LauncherActivity,用来开发Intent列表页面。LauncherActivity继承了ListActivity,它开发出来的列表界面中的每个列表项都对应于一个Intent,单击不同的列表项时应用程序会自动启动对应的Activity。
系统组件ExpandableListActivity,用来显示一个可展开的列表。
系统组件PrefenceActivity,用于显示一个设置界面。推荐与PreferenceFragment配合使用。PrefenceActivity内加载<preference-headers/>主列表布局文件,PreferenceFragment内加载<PreferenceScreen/>各列表项对应的界面布局文件。
在singleInstance加载模式下,系统保证无论从哪个Task中后启动目标Activity,只会创建一个目标Activity实例,并会使用一个全新的Task 栈来加载该Adctivity实例。
当系统采用singleInstance模式启动目标Activity时,可分为如下两种情况。
- 如果将要启动的目标Activity不存在,系统会先创建一个全新的Task,再创建目标Activity的实例,并将它加入新的Task栈顶。
- 如果将要启动的目标Activity已经存在,无论它位于哪个应用程序宁中、位于哪个Task中,系统都会把该Activity所在的Task转到前台,从而使该Activity显示出来。
需要指出的是,采用singleInstance模式加载Activity总是位于Task 栈顶,且采用singleInstance模式加载的Activity所在Task将只包含该Activity。
/res/values目录下的各资源文件根标签都是<resource/>。
/res/xml目录下保存原始xml资源,getXml()得到xml资源XmlPullParser。
Fragment
每个FragmentTransaction可以包含多个对Fragment的修改,比如包含调用了多个add()、remove()、和replace()操作,最后调用commit()方法提交事务即可。
在调用commit()之前,开发者也可调用addToBackStack(将事务添加到Back栈,该找由Activity
负责管理,这样允许用户按BACK按键返回到前一个Fragment壮态。
引用资源
实例:开发兼顾屏幕分辨率的应用
为了开发兼顾屏幕分辨率的应用,可以考虑在res/目录下为大屏幕、600dpi的屏幕建立相应的
资源文件夹:values-large、values-sw600dp,在该文件夹下建立一个名为refs.xml的引用资源文件。
该引用资源文件专门用于定义各种引用项。
Intent
Android的应用程序包含三种重要组件:Activity、Service、BroadcastReceiver,应用程序采用了一致的方式来启动它们--都是依靠Intent来启动的,Intent就封装了程序想要启动程序的意图。不仅如此,Intent还可用于与被启动组件交换信息。Android系统的Intent设计有点类似于MVC框架中逻辑视
图的设计。
Intent对象大致包含Component、Action、Category、Data、Type、Extra和Flag这7种属性,其中Component用于明确指定需要启动的目标组件,而Extra则用用于"携带"需要交换的数据。
设置Intent的Action属性值为"android.intent.action.MAIN"字符串、Category属性值为"android.intent.category.HOME"字符串,满足该Intent的Activity 其实就是Android系统的Home桌面。
Uri字符串总满足如下格式。scheme://host[:port]/path
样式与主题资源
三原色理论:白色光大致可"分解"为红、绿、蓝三种光,红、绿、蓝三种光可合并成白色光。当红、绿、蓝都是最大值时,三种光合并就会变成白色光;当三种光的值相等,但不是最大值时,三种光将会合并成灰色光;如果其中一种光或两种光的值更亮,那么三种光合并就会产生彩色的光。
Android的样式资原文件的根元素是<resources.../>元素,该元素内可包含多个<style.../>子元素,每个<style.../>子元素定义一个样式。<style.../>元素指定如下两个属性。
name:指定样式的名称。
parent:指定该样式所继承的父样式。
在<style.../>元素内可包含多个<item.../>子元素,每个<item.../>于元素定义一个格式项。
使用控件的style属性可以给单个控件指定控件样式。
主题与样式的区别主要体现在:
- 主题不能作用于单个的View组件,主题应该对整个应用中的所有Activity起作用,或对指定的Activity起作用。
- 主题定义的格式应该是改变窗口外观的格式,例如窗口标题、窗口边框等。
在<style/>中增加窗口属性配置则此样式上升为主题样式。可以在<application/>标签或<activity/>标签属性中指定主题。
Android中提供了一些内置主题资源,这些主题通过查询android.R.style类可以看到。例如对话框风格的窗口,只要采用如下代码来定义某个 Activity即可。
<activity android:theme="android:Theme.Material.Dialog"></activity>
Android5.0中增加了Material设计主题。

属性资源
styleable对象是一组attr属性的集合。
原始资源
Android的原始资源可以放在如下两个地方。
- 位于/res/raw/目录下,Android SDK会处理该目录下的原始资源,AndroidSDK会在R清单类中为该目录下的资源生成一个索引项。
- 位于/assets/目录下,该目录下的资源是更彻底的原始资源。Android应用需要通过AssetManager来管理该目录下的原始资源。
语言资源

自适应屏幕


通常来说,屏幕资源需要考虑如下三个方面。
- 屏幕尺寸:屏幕尺寸可分为small(小屏幕)、normal(中等屏幕)、large(大屏幕)、xlarge(超大屏幕)4种。
- 屏幕分辨率:屏幕分辨率可分为ldpi(低分辨率)、mdpi(中等分辨率)、hdpi(高分辨率)、xhdpi(超高分辨率)、xxhdpi(超超高分辨率)5种。
- 屏幕方向:屏幕方向可分为land(横屏)和port(竖屏)两种。


1324

被折叠的 条评论
为什么被折叠?



