Andriod(3)——Understanding Android Resources
Now, we will follow that introduction with an in-depth look at Android SDK fundamentals and cover resources , content providers, and intents. These three concepts are fundamental to understanding Android programming and should place you on a solid foundation
for the material in subsequent chapters.
1 Understanding Resources
You can change a resource without recompiling the application, and a resource in Android is a file or a value that is bound to an executable application.
Every resource has a ID, that you can change the content of the ID without changing the source code.
1 String Resource
String resource definitions is in some XML files which reside in the subdirectory as follows:
res/values
When the file is created or updated, the Eclipse ADT plug-in will automatically create or update a Java class in your applications's root package called R.java with unique IDs for the two string resources specified.
R.java just like this:
The two static final ints defined with variable names hello and app_name are the resource IDs that represent the corresponding string resources. You could use these resource iDs anywhere in the source code through the following code structure:
R.string.hello
2 Layout Resources
In Android, the view of a screen is often loaded from an XML file as resource.These XML files are called layout resources. A layout resource is a key resource used in Android UI programming.
setContentView(R.layout.main);
This line points out htat there is a static class called R.layout, and within that class, there is a constant called main(an integer), pointing to a View defined by an XML layout resource file. This statement expects the programmer to create the file /res/layout/main.xml
and place the necessary layout definition in that file.
A LinearLayout lays out its children vertically or horizontally.
You will need to define a separate layout file for each screen (or activity). More accurately, each layout needs a dedicated file.
The views defined in layout files are accessible in java code through their resource IDs generated in R.java.
TextView tv = (TextView)this.findViewById(R.id.text1);
tv.setText("Try this text instead");
The constant R.id.text1 corresponds to the ID defined for the TextView. The id for the TextView in the layout file is as follows:
<TextView android:id="@+id/text1"
..
</TextView>
The constant called text1 will be used to uniquely identify this view among other views hosted by that activity. The plus sign (+) in @+id/text1 means that the ID text1 will be created if it doesn't exist already.
3 Resource Reference Syntax
The syntax you use to allocate an id to a resource in the XML file is called resource-reference syntax.
The id attribute syntax in the previous example @+id/text1 has the following formal structure:
@[package:]type/name
Andriod(3)——Understanding Android Resources的更多相关文章
- understanding android build layer · Dylan
build / android 先看看Android官方的解释 Understand Build Layers The build hierarchy includes the abstraction ...
- cocos2dx android resources.ap_ does not exist
当我们在eclipse中打开cocos2dx自动创建的工程时,经常会出现错误: cocos2dx android resources.ap_ does not exist 这是因为android工程的 ...
- android resources使用总结
http://developer.android.com/guide/topics/resources/more-resources.html http://developer.android.com ...
- Illegal resource reference: @*android resources are private and not always present
0:前言 在android开发中,当使用别人的代码的时候,在style.xml中有此种错误 1:解决方案 删除*星号
- Andriod的国际化-android学习之旅(五十八)
android资源国际化
- Understanding Android Security(安卓安全的理解)
论文作者: Enck, William Ongtang, MacHigar McDaniel, Patrick 下一代的开放操作系统不会在个人主机和大型主机上出现,而是在只能手机上.新环境的开放性将会 ...
- android Resources 类的使用
使用 R.<resource_type>.<resource_name> 获取的是资源的一个 id (int 类型), 但有时候我们需要获取资源本身,这时候我们可以通过 Res ...
- Android Resources
Ref:Android开发最佳实践 Ref:Android高手速成--第一部分 个性化控件(View) Ref:Android高手速成--第二部分 工具库 Ref:Android高手速成--第三部分 ...
- Andriod Unity 调用android函数
//首先这是一个前沿 //我看了多的资料,还看了近半个小时的 android activity 的讲解 终于打出了apk //接下来开始 //一步一步的跟着我走 1.创建一个android项目或者一个 ...
随机推荐
- codeblocks中文编码问题
其实这是老调重弹的问题了,在windows下面出现中文乱码大多都是编码格式的问题不一致的问题,最简单的就是uft-8和gbk冲突的问题.如果一个文件本来是以utf-8存的,但是以gbk打开,当然会出现 ...
- 深度学习(八) Batch Normalization
一:BN的解释: 定义: 顾名思义,batch normalization嘛,就是“批规范化”咯.Google在ICML文中描述的非常清晰,即在每次SGD时,通过mini-batch来对相应的act ...
- java的文件操作类File
java.io.File类,是java获取文件/文件夹的所有属性,和完成所有相关操作的类 例子: package test.file.IO; import java.io.*; public clas ...
- [心平气和读经典]The TCP/IP Guide(003)
The TCP/IP Guide [Page 43, 44] Scope of The TCP/IP Guide | 本书的讨论范围 The first step to dealing with a ...
- ThreadPoolExecutor 杂记
When a new task is submitted in method execute(Runnable), and fewer than corePoolSize threads are ru ...
- You have not concluded your merge. (MERGE_HEAD exists)。(转)
自己简直就是一个git小白,碰到问题,一点点的解决吧,可能不太系统,但也只能勤能补拙了 Git本地有修改如何强制更新 本地有修改和提交,如何强制用远程的库更新更新.我尝试过用git pull -f,总 ...
- 手动添加Git Bash到右键菜单
1. 打开注册表. 2. 找到[HKEY_CLASSES_ROOT\Directory\Background]. 3. 在[Background]下如果没有[shell],则右键-新建项[shell] ...
- angular环境搭建时的坑
安装angular环境踩过一些坑,最终还是把工程跑起来了,这里描述一下我的步骤,不排除有些步骤是多余的,希望能对遇到同样问题的小伙伴有帮助. 下载最新版node.js. 安装node,安装过程一路点下 ...
- flex的使用以及布局 转载
转 : http://www.cnblogs.com/waisonlong/p/6055020.html flex的使用以及布局 1.添加flex属性后的区别 1 2 3 4 5 6 7 8 9 ...
- Connection连接、关闭数据库
创建连接sql server数据库的字符一般有两种, 一种是以sql验证登录的 一种是以windows身份验证的 步骤: 引用命名空间System.Date.SqlClient 将连接方法声明至字符串 ...