学习内容:

1.        认识R类(R.java)的作用

R.java是在建立项目时自动生成的,这个文件是只读模式,不能更改。R类中包含很多静态类,且静态类的名字都与res中的一个名字对应,即R类定义该项目所有资源的索引。

a.在代码中使用资源文件  具体格式为:R.资源文件类型.资源文件名称

例如,Java代码:

setContentView(R.layout.login_system);                                                    
//设置Activity显示的布局视图

Button cancelBtn = (Button)findViewById(R.id.cancelButton);         
//获得Button实例

EditText userEditText = (EditText)findViewById(R.id.userEditText);   
// 获得TextView实例

另外,除了访问用户自己定义的资源文件,还可以访问系统中的资源文件。大部分的资源文件被定义在android包下的R类中。访问系统中的资源文件格式为:android.R.资源文件类型.资源文件名称

例如,Java代码:

int i ;

i = android.R.array.emailAddressTypes;         // 数组

i = android.R.dimen.app_icon_size;                // 尺寸

textview1.setText(R.string.msg);                       //定义<string name="msg">HelloJason!</string>

b.在其他资源文件中引用资源文件  具体格式为:”@资源文件类型/资源文件名称”

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/ msg "                                  <!--引用了一个字符串来表示文本内容-->

android:textColor="@color/opaque_red"             <!--引用了一个颜色来表示文本颜色-->

android:textSize="@dimen/sixteen_sp"/>            <!--引用了一个尺寸来表示文本尺寸-->

2.        学习在activity中使用findViewById方法查找组件;

例如:     TextView textview1 =(TextView) findViewById(R.id.textView1);

该函数利用我们在XML文件中定义的View的id属性来获取相应的View对象。findViewById的参数是一个View的ID。

View.findViewById()  vs
 Activity.findViewById()

一般我们在oncreate()方法中使用的(**view)findViewById(R.id.**)既是调用的Activity中的findViewById()函数。

而在其他情况写出的***view.findViewById()中调用的是view类中的findViewById()

3.        学习在layout中使用@string查找字符串

res->values->strings.xml添加string元素,定义<stringname="msg">Hello Jason!</string>

在activity.java中的引用格式为:R.string. msg

在activity.xml中引用格式为 “@string/msg” (注意没有+)        <!--引用了一个字符串来表示文本内容-->

4.        学习在android项目中加入资源国际化的技巧

在res目录下建立文件夹values-zh-rCN

在默认的values目录下的写英文的string

在新建的values-zh-rCN目录下添加string,写中文的string

系统会根据Custom Locale中默认的语言格式,设置资源的语言格式

最新文章

  1. codeforces round #234B(DIV2) B Inna and New Matrix of Candies
  2. Android图片圆角效果
  3. 不同语言的Unix时间戳
  4. 洛谷 P1373 小a和uim之大逃离
  5. hadoop的wordcount例子运行
  6. libiconv2.dll
  7. Python顺序与range和random
  8. php模式设计之 中介者模式
  9. 如何修改int的打印内容——史上最难的JAVA面试题
  10. salesforce零基础学习(八十六)Ajax Toolkit (VF页面中使用及javascript action使用)
  11. eclipse中创建完整的maven项目
  12. RequireJS简单实用说明
  13. 【LOJ565】【LibreOJ Round #10】mathematican 的二进制 DP 分治FFT
  14. maven-java包管理工具-01
  15. ASP.NET MVC提交LIST列表到后台接收不到数据
  16. LLDP协议、STP协议 笔记
  17. Centos记录所有用户登录和操作的详细日志
  18. mac下安装mysql 1820 重置默认密码
  19. linux查找目录下的所有文件中是否含有某个字符串 &lt;zhuan&gt;
  20. [原创] 腾讯RTX二次开发相关的一些注意事项

热门文章

  1. CGI、FastCGI和php-fpm的区别
  2. Android学习总结——强制下线功能(广播)
  3. Leetcode:linked_list_cycle
  4. hibernate-4.3.5安装配置
  5. nginx使用keepalived实现高可用
  6. python-文件操作(1)
  7. FileZilla 安装配置参考
  8. JS高级程序设计学习笔记之Date类型
  9. datatable列操作
  10. C#调用C++的DLL 数据类型转换