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的更多相关文章

  1. understanding android build layer · Dylan

    build / android 先看看Android官方的解释 Understand Build Layers The build hierarchy includes the abstraction ...

  2. cocos2dx android resources.ap_ does not exist

    当我们在eclipse中打开cocos2dx自动创建的工程时,经常会出现错误: cocos2dx android resources.ap_ does not exist 这是因为android工程的 ...

  3. android resources使用总结

    http://developer.android.com/guide/topics/resources/more-resources.html http://developer.android.com ...

  4. Illegal resource reference: @*android resources are private and not always present

    0:前言 在android开发中,当使用别人的代码的时候,在style.xml中有此种错误 1:解决方案 删除*星号

  5. Andriod的国际化-android学习之旅(五十八)

    android资源国际化

  6. Understanding Android Security(安卓安全的理解)

    论文作者: Enck, William Ongtang, MacHigar McDaniel, Patrick 下一代的开放操作系统不会在个人主机和大型主机上出现,而是在只能手机上.新环境的开放性将会 ...

  7. android Resources 类的使用

    使用 R.<resource_type>.<resource_name> 获取的是资源的一个 id (int 类型), 但有时候我们需要获取资源本身,这时候我们可以通过 Res ...

  8. Android Resources

    Ref:Android开发最佳实践 Ref:Android高手速成--第一部分 个性化控件(View) Ref:Android高手速成--第二部分 工具库 Ref:Android高手速成--第三部分 ...

  9. Andriod Unity 调用android函数

    //首先这是一个前沿 //我看了多的资料,还看了近半个小时的 android activity 的讲解 终于打出了apk //接下来开始 //一步一步的跟着我走 1.创建一个android项目或者一个 ...

随机推荐

  1. mysql-常用注入渗透手法

    mysql: 内置函数常用函数:left(), mid(), ord(),  length(), benchmark(),load_file(), outfile(), concat(), 系统重要信 ...

  2. python-Lock锁线程同步和互斥

    #!/usr/bin/python #coding=utf-8 #线程间通信的同步与互斥操作-锁 import threading a=b=0 lock=threading.Lock() def va ...

  3. canvas猜数游戏

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. APU (美国AMD公司研发的加速处理器)

    APU(Accelerated Processing Unit)中文名字叫加速处理器,是AMD“融聚未来”理念的产品,它第一次将中央处理器和独显核心做在一个晶片上,它同时具有高性能处理器和最新独立显卡 ...

  5. Promise原理详解

    参考文章:深入理解 Promise.[翻译]Promises/A+规范 从入门Promise的正确姿势中我们已经了解到Promise的基本用法.那么现在给你一个需求:根据Promise的用法和Prom ...

  6. 解决 swap file “*.swp”already exists!问题

     用vim编辑文件实际上是先copy一份临时文件,病映射到内存给你编辑,编辑的是临时文件,当执行:w后才保存临时文件到原文件,执行:q后才删除临时文件. 每次启动检索是否有临时文件,有就询问如何处理, ...

  7. 利用jquery判断点是否在椭圆内

    源码例子下载 : <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" ...

  8. spring mongodb增删改查操作

    添加数据 School @Id @GeneratedValue private long id; @Indexed(unique = true) private String name; studen ...

  9. golang操作mysql数据库

    golang操作mysql数据库 代码: mysql的增.删.改.查 package main import ( "database/sql" "fmt" &q ...

  10. spring-security 开启注解权限控制为什么没有效果

    如果配置在spring-security中没有权限控制效果,可以配置在springmvc中试试 <security:global-method-security pre-post-annotat ...