说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Android开发技巧:Android应用程序架构

HTML文档下载 WORD文档下载 PDF文档下载
src/ java 原代码存放目录gen/ 自动生成目录gen 目录中存放所有由Android 开发工具自动生成的文件。

 

作者:craining

src/ java 原代码存放目录

gen/ 自动生成目录

gen 目录中存放所有由Android 开发工具自动生成的文件。目录中最重要的就是R.java 文件。

这个文件由Android 开发工具自动产生的。Android 开发工具会自动根据你放入res 目录的xml 界面文件、图标与常量,同步更新修改R.java 文件。正因为R.java 文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java 在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编译器也会检查R.java 列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。

res/ 资源(Resource)目录

在这个目录中我们可以存放应用使用到的各种资源,如xml 界面文件,图片或数据。具体请看ppt 下方备注栏。

AndroidManifest.xml 功能清单文件

这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS 服务等等)。另外当你新添加一个Activity 的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。

default.properties 项目环境信息,一般是不需要修改此文件res/drawable 专门存放png 、jpg 等图标文件。在代码中使用getResources().getDrawable(resourceId)获取该目录下的资源。

res/layout 专门存放xml 界面文件,xml 界面文件和HTML 文件一样,主要用于显示用户操作界面。

res/values 专门存放应用使用到的各种类型数据。不同类型的数据存放在不同的文件中,如下:

  strings.xml 定义字符串和数值,在Activity 中使用getResources().getString(resourceId) 或getResources().getText(resourceId)取得资源。它的作用和struts 中的国际化资源文件一样。

<?xml version="1.0" encoding="UTF-8"?>

<resources>

<string name="android"> android</string>

</resources>

  arrays.xml 定义数组。

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string-array name="colors">

<item>red</item>

<item>yellow</item>

<item>green</item>

<item>blue</item>

</string-array>

</resources>

  colors.xml 定义颜色和颜色字串数值, 你可以在Activity 中使用

getResources().getDrawable(resourceId) 以及getResources().getColor(resourceId)取得这些资源。例子如下:

<?xml version="1.0" encoding="UTF-8"?>

<resources>

<color name="contents_text">#ff000000</color>

</resources>

  dimens.xml 定义尺寸数据,在Activity 中使用getResources().getDimension(resourceId) 取得这些资源

<?xml version="1.0" encoding="UTF-8"?>

<resources>

<dimen name="key_height">50dip</dimen>

</resources>

  styles.xml 定义样式。

<?xml version="1.0" encoding="utf-8"?>

<resources>

<style name="androidText" parent="@style/Text">

<item name="android:textSize">18px</item>

<item name="android:textColor">#008</item>

</style>

</resources>

res/anim/ 编译成帧动画的XML 文件。

res/xml/ 在Activity 中使用getResources().getXML()读取该目录下的XML 资源文件。

res/raw/ 该目录下的文件将直接被复制到设备上。编译软件时,这些数据不会被编译,它们被直接加入到程序安装包里。 为了在程序中使用这些资源, 你可以调用

getResources().openRawResource(ID) , 参数ID 形式:R.raw.somefilename 。

 

1月24日:Mac步入了而立之年,生日快乐! 微软2014财年Q2财报:Surface营收翻倍 趣文:假如编程语言在一起聚餐 AOL收购个性化服务公司Gravit,耗资9070万美元 谷歌三月将办Pwnium 4黑客大赛 奖金高达271.828万美元 研发周报:精简代码,为网站减负的十大建议 教育自由日:让教育资源更开放 Win8.1下解决IE11浏览器不兼容的方法 移动周报:找你妹版权战、访俄民手游、GitHub游记终回 一周消息树:1月23日全国顶级域名根服务器疑遭黑客攻击 影响巨大 下一代互联网搭建技术:高空气球,无人机,又或是卫星? 红帽认证总监:10个架构师里有4个在中国 数据中心优化的5个途径:软件定义、云计算等 收购诺基亚,微软能否再度崛起? 一周热点:阿里专家深度解析分布式系统,美团数据挖掘工程师分析企业大数据 独立游戏节:学生展示优胜者奖项得主揭晓 专访Meetup Andres Glusman:解析UX、精益创业方法论背后的强大力量 开发者不容错过的12款开源JavaScript库 搭载FusionCube,HANA内存计算助力实时运营 叫板Google,VMware15亿美元收购AirWatch强势布局物联网 2014年IT企业招聘调查报告:外资企业招聘规模偏大、技术人员比重高 小机器人Ozobot:Maybe,我也有禅意 Google 4亿美元收购人工智能初创公司DeepMind 加入初创企业前,自问四个问题 King.com维权 上演“贼喊捉贼” 淘宝:HBase Bulkload bug修复及patch提交 Google的“机器人情结”:两次合计36亿美元的人工智能收购 挑战谷歌、抢占新兴市场,百度进军泰国、巴西和埃及市场 《近匠》第8期:Unity——不再仅仅是游戏引擎 Colours:移动应用的开源“美颜相机” 微信红包活动:用户疯狂中的腾讯“阴谋” 我下面的问题解决了 ORACLE统计问题 腊肉是月老啊,单身的哥哥们找腊肉拉红线啊! 新闻搜索 using namespace std; 微星845 Ultra-C 支持P4赛扬2.0的吗? 请问哪里有关于cc的比较好的文档资料. 水晶报表的问题!!!!!!!!!!!! 关闭Jbuilder9时,会弹出微软拼音输入法的关于信息框,如何解决? TreeView的删除问题/// 怎样在delphi里使用windows定义的结构体 问个问题 顺便散分 sub main问题 郁闷,一夜起来信誉分掉了一大截,散分 请问UNIX下makefile 是怎么一回事 我在学习C#,不过基础不好,很吃力!中秋快乐! 如何防止文件被访问?谢谢! 今年中秋我爸收了一大堆礼物,价值估计不下于20万(我爸是税务局长),呵呵,太高兴了!再散点分给大家!今年中秋我爸收了一大堆礼物, ASP.NET有没有类似javascript中的window.confirm( )这样的方法,弹出对话框提示是否确认? C#builder里的CaliberRM有谁用过? 学ASP学的我晕了,大家给条路!!! 简单问题求助~~~~~~~~~~~~~~~ sql7.0到sql2000升级 图像存储及传输的计算问题? 为什么不能共享? 大家讲讲TreeMap的使用,回答好的立刻给100分!! 请问哪里有免费的或破解的查木马软件下载?? 在ASP.NET中能控制输入法吗?在.NET应用程序中有一INPUTLANGUAGE类,可以控制,在ASP.NET中能实现吗? 有谁做过用moden拨号连接,访问另一台pc,建立连接 如何让bean中的“输出”定位到网页中的特定位置? 请问以下这个项目如何设计?关于图形数据库系统的 触发器的大问题,请各位高手支招: CEO是个什么职务?有多大管理权限? 一个看似简单.....其实非常难的问题....小妹初学web开发. 为什么不能共享??? 100分求:哪儿有《深入理解linux内核》可供下哉! 工作机会 JBUILDER是否帶有TomCat﹐如何安裝使用﹖ 这里有没有用过realbasic的朋友 为什么不能共享??? 报表怎么样进行总计,一个QRexpr的问题? 请推荐 求救,如何用实现在同一个局域网内另外一台电脑用ADO访问服务器的ACCESS文件,马上给分 请问高手,以下问题如何解决? 在java中怎么把日期0204改成2002-04 在自己建立的文件夹下建立文件,可怎么都不对头!!SOS!! 数据窗口打印问题,多多帮忙!!!!!!!!!!!!!!!!!!!!!!!!!! 在SQL中写个函数,急 我刚学编程没有多久,发现在数据库很重要,但不知道怎样一个用一个系统方法去学习?请各们前辈能给我以指点。非常感谢!!! 我用ADO做了一个数据库应用,数据库是ACCESSXP,ODBC JET4。0?有一个问题 使用DEV-C++进行命令行编译的设置问题 范张鸡黍 典故出至那里? 我想知道.一个女字加个卡字读什么 怎么打出来? 清平月六盘山它在六盘山上在哪儿刻着? 《清平月·六盘山》谁有谢谢提供! 清平月 六盘山的全诗解释 (急!清平月·六盘山的全诗解释 急!同志,拜托.是全诗的意思.翻译一下,没那么复杂额 小强刚学完初中的电学知识,恰逢家中点灯不亮 更漏子玉炉香 温庭筠塑造了一个什么样的人物形象 问字怎么读? 求带希字的四字词语.谐音也行. 姓韩的历史上又名的坏蛋大家帮我找找,性韩的优美有什么坏蛋,历史上特别出名的也行,实在没有就是个比较出名的太监都可以,反正只要姓这个韩就可以了~@我想骂韩国人~@ 做个数学题:A,B,C分别为三角形的三边之长,求证:(A/B+C)+(B/C+A)+(C/A+B) 伊朗绞刑余生囚犯免遭再行刑马里北部自杀式袭击造成3人死亡外媒评述:困扰中印关系老难题仍待解决四岁姐姐打开浴缸水龙头 意外将两岁弟日报揣测:俄印效仿日本对华“远交近攻孟加拉国客机厕所现280块金锭 价值新快报被拘记者妻子:警方假借查案将丈青藏铁路格尔木站两辆火车相撞 致50宁波女子上班途中被贴淫秽言语字条(图受不了婆婆爆粗口 女子去法院和丈夫闹兰溪男子因儿子学习差被指责 动手打伤轻轨车上只顾玩手机 下车时把10多万回兴打造临空经济走廊新地标老支书回乡带村民种猕猴桃脱贫路中间放石墩 不会堵了消防通道?袅袅秋风起 主城周六入秋杭州无车日调查:人行道给汽车让路 部5万游客享科普盛宴僵尸车来袭夜市摊主大学蹭课 天天坐头排街拍时尚大片 重庆小姐亮相文博会第十二届网博会将于十月举行截拳之道神灵纪邪火焚真洗尽锋芒半穿越状态天极门徒意志裁决篮神传说异界相师星际格斗兵重生之我是法神清水断崖旅游士林夜市旅游杨公堤旅游龙山旅游神龙岛旅游五龙岛旅游富里桥旅游金龙桥旅游遇龙桥旅游兴隆桥旅游工农桥旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘