今天让我觉得比较头疼的就是程序和xml间的映射关系。
Android将View作为一种Xml存储,在Application需要使用这些View的时候去调用它们。这样可以达到一种比较高的重用性。而且在程序修改的时候只需要修改配置文件即可,不必从写程序。

今天的最主要问题就是程序和XML之间是如何联系的:

Android文档中的定义是:程序通过R.java文件去寻找Res目录下的xml们。
在简单的 Hello World程序中,我们很好解释R.java与Res的对应。
Class对应Res下面的文件夹,属性对应文件。
但是这样的解释对吗?

到了Simple(SDK)中,我们发现R.java下包含
Anim
Array
Attr
Color
Drawable
Id
Layou
Menu
Raw
String
Style
Styleable
Xml
几个类。
而Res文件夹的子目录却只对应
Anim
Drawalbe
layout
menu
raw
values
xml
这几个文件夹。

在Simple中App包下面有个例子:SendResult
其中button是通过
button = (Button)findViewById(R.id.violet);得到的。
ok,R.id.violet怎么找?

其实R.id 不是一个目录。我说不好这个东西是什么,更像一种Id的集合。每一个id.xxx都在applications对应的xml文件中。而不是id本身作为一个文件或目录村财。
比如这个R.id.violet存在于 Res\layout\Send_Result.xml下面。以
Button android:id="@+id/corky"
的方式注册到R.Id中。

转载于:https://www.cnblogs.com/cpx3216/archive/2009/04/21/1938101.html

andorid 第五天 了解xml与应用程序之间的关系相关推荐

  1. c语言xml序列化,C# XML和实体类之间相互转换(序列化和反序列化)

    我们需要在XML与实体类,DataTable,List之间进行转换,下面是XmlUtil类,该类来自网络并稍加修改. using System; using System.Collections.Ge ...

  2. autoconfig.xml与antx.properties一级application.properties之间的关系

    Java web项目中一般都有配置文件,文件中包含一些配置信息供Java工程启动和运行时使用,这些常见的配置文件大都是一些以.properties后缀的文件,比如常见的antx.properties以 ...

  3. Firewalld,iptables概述(netfilter和Firewalld,iptables三者之间的关系,四表五链,Firewalld防火墙的配置方发,SNAT,DNAT了解)

    文章目录 Firewalld,iptables概述 Firewalld了解 iptables了解 Firewalld和iptables的关系 netfilter Firewalld.iptables ...

  4. 支付宝五福53张自动领取程序 v2021

    简介: 临近过年,身边的朋友们都开始参加支付宝一年一度的集五福活动了!今天小编带来的这款支付宝五福53张自动领取程序能够帮助集福的朋友们更加轻松地完成任务,让用户一键完成53个任务并自动获取福卡,非常 ...

  5. 《C语言程序设计》(谭浩强第五版) 第2章 算法——程序的灵魂

    <C语言程序设计>(谭浩强第五版) 第2章 算法--程序的灵魂 习题解析与答案 你也可以上程序咖(https://meta.chengxuka.com),打开大学幕题板块,不但有答案,讲解 ...

  6. 未来五年,不懂人工智能的程序员不会被淘汰

    1. 话题背景 最近人工智能很火,区块链很火.都吹的上天的,工资非常高.空口无凭,来看看相关的数据. 薪资高,人才缺口大. 2.程序员的分类 程序员有很多工种,前端,后台,Android,java,c ...

  7. QT5.14入门教程GUI(五)第5个QT程序-SpinBox

    QT5.14入门教程GUI(五)第5个QT程序-SpinBox 本节,介绍SpinBox,DoubleSpinBox如何使用, 1.新建项目,改名称SpinBox; 2.改类名 3.打开UI界面,双击 ...

  8. Spring实战 | 第二部分 Web中的Spring(第五章 构建Spring Web应用程序)

    第五章 构建Spring Web应用程序 映射请求到Spring控制器 透明地绑定表单参数 校验表单提交 一.Spring MVC起步 1.跟踪spring MVC的请求 在请求离开浏览器时,会带有用 ...

  9. 第五节--ROS操作系统----创建ROS程序包

    (一)本节教程介绍如何使用roscreate-pkg或catin创建一个新程序包,并使用rospack查看程序包的依赖关系 1)一个catkin程序包由什么组成 一个程序包想要称为caktin程序包必 ...

最新文章

  1. php 类似微信下拉菜单,微信小程序实现下拉框(附代码)
  2. windows 2008 64位oracle11g部署问题(3)之ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...
  3. JSR380(Bean Validation 2.0)
  4. thinkphp的控制器包含在Url中时注意区分大小写
  5. python numpy矩阵切片和索引的用法(冒号:和省略号...)
  6. 六个iPhone6不会火爆的理由
  7. ​怎么用藏头诗向女友表白......
  8. ssl2863-石子合并【dp练习】
  9. (Java) 线程池
  10. 想学 Python?那这套教程再适合你不过了!!
  11. [20150828]插入commit scn到记录.txt
  12. 在Recyclerview使用GlideAPP加载大量图片导致内存溢出(oom)
  13. 亚马逊SP-API市场端点接口文档整理
  14. 360能删除mysql吗_如何把Mysql卸载干净(亲测有效)
  15. Android-2-控件使用
  16. 这心态也太好了!阿水赛前与kid双排狂说骚话:赢了血赚输了不亏
  17. MMD导入unity中使用
  18. C++ map操作下标问题
  19. P4043 [AHOI2014/JSOI2014]支线剧情(有源汇上下界最小费用可行流)
  20. 数据库 --关联查询(多表查询)

热门文章

  1. SyncNavigator数据库同步软件8.4.1 中文版
  2. $Django 多表操作(增删改查,基于双下划线,对象的查询) 在Python脚本中调用Django环境...
  3. 微信已停止访问该网页怎么解决
  4. Vue.js:监听属性
  5. 题解报告:hdu 1257 最少拦截系统(贪心)
  6. JavaScript学习笔记系列2:Dom操作(一)
  7. HDU 3790 最短路径问题
  8. JavaScript 访问对象属性和方法及区别
  9. C++读取配置文件的写法
  10. java.util.concurrent介绍【转】