原文: .Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化

我们知道资源被注册到R.java我们通过R.java就可以读取到界面中的组件。跟我们.net一样,通过ID来读取组件

知识点:

  1. 通过R.java读取组件
  2. MainActivity.java通过findViewById方法查找组件
  3. 在Layout中用@string查找字符串,这个跟我们MVC中国际化基本相识,通过xml这种资源引用进行中文和英文切换
  4. 加入中文和英文本地化

双击fragment_main.xml设计视图,拖入一个Button和一个TextView,并双击进入xml代码

添加android:onClick,我也是靠猜的,程序代码都有相似性,特别是java与javascript。不过我们还是查找帮助文档比较好

输入android:onClick="SetTextView"

那么这段跟javascript一样,后台必须有SetTextView方法在监听这个事件

打开我们的MainActivity.java加入方法

public void SetTextView(View v)    {        TextView tv=(TextView)findViewById(R.id.textView1);        tv.setText("点击了按钮我要变了!");    }

运行看下效果,做了个lable字体设置好像没什么好炫耀的

OK。现在我们来看看怎么进行中英版本的切换!

我们的Button名字是Button,当手机系统设置为中文时候,应该是按钮字样,英文时候显示Button

现在打开Res-----values----string.xml 添加一个属性 (这里等于.net国际化的res资源文件。有健值对应的xml)

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">HelloWorld</string>    <string name="hello_world">Hello world!</string>    <string name="action_settings">Settings</string>    <string name="Btn_Name">Button</string></resources>

<string name="Btn_Name">Button</string>

在Values创建文件夹values-zh-rCN并复制values下的string.xml 到values-zh-rCN把Button改成按钮

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">HelloWorld</string>    <string name="hello_world">Hello world!</string>    <string name="action_settings">Settings</string>    <string name="Btn_Name">按钮</string></resources>

回到layout把button的text从Button改成@string/Btn_Name

其实这里的@就是R的意思。也就是R.String.Btn_Name我们可以打开R.java观察到Btn_Name

运行并打开切换系统的版本运行模拟器里面的CustomLocale切换

更多相关文章

  1. android 限制输入字符数!看清楚:是限制字符数,不是字数!中英混排?就算
  2. Android(安卓)Material Design:CoordinatorLayout与NestedScrollV
  3. Android应用框架之应用启动过程详解
  4. Android中使用讯飞语音合成(报21001)组件未安装
  5. delphi XE Android四大组件ContentProvider:delphi XE可调用的And
  6. 关于Android(安卓)ListView组件中android:drawSelectorOnTop含义
  7. 原生CountDownTimer 类实现获取验证码的按钮
  8. androidUI控件下载地址
  9. android短信发射器

随机推荐

  1. 【android】Cursor记录集游标、ListView
  2. Android 自动化测试—robotium(四)CheckBox
  3. 【Android开发学习07】存储简单数据的利
  4. Android手机开发:日期函数之判断某日期格
  5. JAVA使用AXMLPrinter获取APK中Androidman
  6. Android高手速成--第三部分 优秀项目
  7. Volley 源码解析
  8. Android 接入微信分享
  9. Android Display System Surface Flinger
  10. Android之封装支付宝支付