.Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化
我们知道资源被注册到R.java我们通过R.java就可以读取到界面中的组件。跟我们.net一样,通过ID来读取组件
知识点:
- 通过R.java读取组件
- MainActivity.java通过findViewById方法查找组件
- 在Layout中用@string查找字符串,这个跟我们MVC中国际化基本相识,通过xml这种资源引用进行中文和英文切换
- 加入中文和英文本地化
双击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切换
本文转自ymnets博客园博客,原文链接:http://www.cnblogs.com/ymnets/p/3713387.html,如需转载请自行联系原作者
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
.Net 转战 Android 4.4 日常笔记(8)--常见事件响应及实现方式
在Andrioid开发中,常见的事件如下 单击事件 OnClickListener 长按事件 OnLongClickListener 滑动事件 OnTouchListenner 键盘事件 OnKeyListenner 焦点事件 setOnFoucsChangeListener 设置方式 1.动态设置(最常用的方式) Button btn = (Button) findViewById(R.id.btnTest); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Log.i("Tip","按钮被点击了"); } }); 2.配置方式(仅限于Button的OnClick事件) <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test1" android:id="@+id/btnTest1" android...
- 下一篇
Android M Launcher3主流程源码浅析
背景 关于Launcher是啥的问题我想这里就没必要再强调了。由于一些原因迫使最近开始需要研究一下Launcher3源码,为了不再像以前那么傻逼(研究Settings等代码没作笔记),故这里赶紧将阶段性的感悟整理成文章,方便日后回看。其实本文来源于我在项目组内部的一次分享活动的ppt。 在开始学习Launcher3源码之前请务必保证你已经具备如下图所示基础知识技能(相关权重系数已经饼状图标注),如下: 必备基础知识技能 看懂Launcher3源码必须要先准备充足上面的知识点,每个知识点在Launcher3源码中的占比数已经通过饼状图给出。可以形象的认为整个原生Launcher就是以MVC为宏观指导、以View为模块的结构;全局有效的核心Activity只有一个,但是其中涉及了多种交互状态,每种状态都至少依赖于一到多个庞大而复杂的自定义View,每一个事件的处理都需要考虑不同状态下不同层级、不同触摸位置的派发拦截处理流程。好了,有了上面这些基础我们就可以愉快的开始了。 Launcher基础知识 有些人可能觉得Launcher很高端,其实Launcher的实质也就是一个普通应用,它只是比...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Red5直播服务器,属于Java语言的直播服务器
- Hadoop3单机部署,实现最简伪集群