- 浏览: 1011394 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (367)
- JavaScript (23)
- Java (60)
- Python (41)
- 其他 (36)
- SQL (4)
- 开发工具 (26)
- Linux (15)
- AJAX (6)
- Cache (3)
- 正则 (4)
- 架构 (9)
- 手机 (3)
- MySQL (4)
- Android (115)
- vps (1)
- 网站 (4)
- scale (3)
- 搜索引擎 (3)
- iPhone (2)
- hessian (1)
- hessdroid (1)
- 411 (1)
- jstat (1)
- gc (1)
- gallery (1)
- 惯性 (1)
- eclipse (1)
- mac wget error (1)
- miui file explorer 无用 解决办法 (1)
- vim (1)
最新评论
-
qingyezhangluo:
哎。楼主您既然是分享代码的为什么要加密的呢?而且问你密码还不回 ...
android应用换皮肤(转) -
MagicError:
kavoe 写道下载文件有密码。。。。
http抓包工具 -
knightdf:
我先试下再来
JAVA的RAS加密例子 -
kavoe:
下载文件有密码。。。。
http抓包工具 -
changanfounder:
hmc1985 写道setCallbackDuringFlin ...
android gallery滑动惯性问题
好久没更新博客了,今天给大家分享一下Android中的资源与国际化的问题,通常我们新建一个Android工程,目录结构如下图所示:
我们主要看一下layout与values目录,layout里的xml文件的我们应用使用布局的文件,values里的sring.xml是用来存放文字资源,一个key对应一个value值。
但是在实际应用开发中,通常横屏(land)与竖屏(port)可能布局文件有所不同,这时候我们可以独自定义横屏与竖屏的布局文件( 文件名字要一样),默认情况是加载layout目录里的布局文件。同样应用还要支持不同的语言,如果我们应用里没有定义手机所用语言的资源时,会默认加载values的值。
为了方便大家理解下面做个简单的Demo.具体步骤如下:
第一步:新建一个Android工程,命名为ResourceDemo。
我们看一下layout目录下的自动生成的main.xml布局文件,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/hello"
- />
- </LinearLayout>
其中我们程序显示的文本内容是在values/string.xml文件中对应的hello的值,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="hello">Hello World, ResourceDemo!</string>
- <string name="app_name">ResourceDemo</string>
- </resources>
运行效果如下图所示:
port(竖屏模式)效果:
Ctrl+F11快捷键模拟器变成横屏(land)模式:
第二步:我们定义land与port模式的布局文件,即在res/目录下创建layout-land与layout-port两个文件夹,目录结果如下所示:
layout-land目录下main.xml和layout内容基本一样,只是显示内容不同,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/land"
- />
- </LinearLayout>
同理layou-port目录下main.xml代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/port"
- />
- </LinearLayout>
当然我们显示的内容是在values/string.xml文件里定义的,这里加了两个值,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="hello">Hello World, ResourceDemo!</string>
- <string name="app_name">ResourceDemo</string>
- <string name="land">This is land mode.</string>
- <string name="port">This is port mode.</string>
- </resources>
然后再次运行程序,效果如下:
竖屏(port)效果:
横屏(land)下效果:
通过上面例子可以得出如果我们已经定义了横屏与竖屏布局文件时,就不会在加载layout里的同名布局文件。
下面我们来讲点国际化,通常国际化我们只要在res/目录下在重新定义values-国家编号,如values-zh-rCN简体汉语,values-zh-rTW繁体,values-jp日语等。
目录结构如下图所示:
这里我只在values-zh-rCN作了改动,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="hello">Hello World, ResourceDemo!</string>
- <string name="app_name">ResourceDemo</string>
- <string name="land">这是横屏模式.</string>
- <string name="port">这是竖屏模式.</string>
- </resources>
我们运行程序之前,把手机语言改成中文,在settings(设置)->language & keyboards(语言与键盘)目录下,选择简体中文,如下图所示:
最然在运行上述工程,效果如下:
这时候我们应用的显示内容就为中文了,而不去显示values/strings.xml里的内容。
Ok~今天就到这里,希望对大家特别是初学者有点帮助.Thx~
转自:http://blog.csdn.net/Android_Tutor/archive/2010/09/09/5874367.aspx
发表评论
-
android屏幕适配
2012-11-16 17:24 2195屏幕适配一直是一个让人头疼的问题,论坛上讨论这个问题的最后也 ... -
禁止Eclipse中xml文件Run as的XSL Transformation生成out.xml以方便Android应用开发
2012-08-26 21:38 2642可以在Eclipse里面配置,菜单Windows->P ... -
android 自带的主题 theme 的使用
2012-08-25 23:21 2373在android的sdk 安装目录data\r ... -
android 如何判断程序是否在前台运行
2012-04-06 00:04 3104private boolean isTopActiv ... -
用代码如何检测一个android程序是否在运行
2012-04-05 23:07 3743<uses-permission android:na ... -
Android-TextView多行本文滚动轻松实现
2012-03-04 19:37 1320TextView tvAndroid123 = (T ... -
让背景模糊的效果
2012-03-04 16:22 2624设置透明度(这是窗体本身的透明度,非背景) Wi ... -
Android 使用shape
2012-03-04 16:14 1054刚刚翻论坛的时候看到的,总觉得以后会用的上这些零零碎碎 ... -
关于android中使用很多大图片的一些做法
2012-02-29 00:11 1446最近在xoom上开发应用,碰到ui设计都是使用图片,而 ... -
屏幕尺寸和像素密度的资源限定符
2012-02-23 15:31 1612屏幕尺寸和像素密度的资源限定符 以下是可以用来为 ... -
android开发之gallery 实现滚动一张且短距离滑动实现滚动
2011-12-19 18:50 1930首先gallery的特点就不用多说了吧,惯性滚动、半屏翻页,但 ... -
下拉刷新
2011-10-14 15:09 1180要实现这种效果 可以参见这里https://git ... -
android应用换皮肤(转)
2011-10-12 14:36 3206看到好多人在问题与解答里面都问怎么换肤,搜了一下论坛里面好像没 ... -
Android签名到底都有哪些作用?
2011-10-09 17:59 2302所有的Android应用程序都要求开发人员用一个证书进 ... -
Android 动态切换全屏和非全屏模式
2011-10-08 15:15 3478直接贴出代码: Java代码 ... -
Android开发——利用Cursor+CursorAdapter实现界面实时更新(转)
2011-09-20 15:47 3085好久没有更新博客了 ... -
Nginx使用反向代理时 Hessian 的 411 错误解决方案【转】
2011-09-15 13:48 2363问题描述: 用 Hessian 实现 web se ... -
理解 Android 本地数据存储 AP(转)
2011-05-18 14:25 1911样例应用程序 为了突出 Android 应用程序开发的本 ... -
Android 本地数据存储 API(二)(转)
2011-05-18 14:23 1984使用 SQLite 数据库 Android 通过 S ... -
Android 本地数据存储 API(三)(转)
2011-05-18 14:22 2571为私有数据使用设备的内部存储器 有了数据存储 API ...
相关推荐
在Android应用开发中,为了使应用能够适应全球不同的语言环境,开发者通常会采用资源国际化(i18n,Internationalization)技术。这个过程涉及到将应用中的文本和图片资源分离出来,以便根据不同地区创建对应的翻译...
Android的资源与国际化设置 代码说明 资源管理和多国版本
用于android资源文件生成工具读取,存放各国语言翻译好的文字
最近看到联想,摩托罗拉等,手机launcher中有个效果,进入mainmenu后,里面的应用程序的图标可以拖来拖去,所以我也参照网上给的代码,写了一个例子。还是很有趣的,实现的流畅度没有人家的那么好,我只是模仿这种...
在Android开发中,本地化(Localization)是一项至关重要的任务,它允许应用程序适应不同地区和语言的用户需求。本地化不仅仅是翻译文本,还包括日期格式、数字格式、货币单位、图像资源等多方面的调整,以确保软件...
总之,使用“android sqlite可视化工具”如SQLite Expert,能极大地提升Android开发中对SQLite数据库的管理和维护效率,使得非SQL专家的开发者也能轻松处理数据库相关任务。同时,这类工具通常具有良好的用户界面和...
资源与国际化设置 开发工具箱 设计哲学与理念 构建常用组件 可选API 相关资料 Package 索引 Class 索引 Class 等级 Views列表 Intents列表 许可列表 资源类型列表 Android IDL(Android接口定义语言) 术语...
资源在Android应用程序编译的过程中,也会被编译成二进制格式。这是为了压缩资源存储空间,以及加快运行时的资源解析速度。Android应用程序在运行的时候,资源管理器AssetManager和Resources会根据当前的机器设置,...
开源中国Android客户端2.0的Gradle化是一个重要的里程碑,标志着该项目从传统的构建方式向现代、自动化、灵活的Gradle构建系统的转变。Android Studio作为Google官方推荐的Android开发集成环境,集成了Gradle构建...
这个资源是网站下载的一份Android usb摄像头的源码!我在我的Exynos4412开发板上面测试OK!不过只能预览!而且我强制把ImageProc.c里面的设备文件指向我USB摄像头的设备文件! 编译环境:ubuntu+ndk_build+eclipse ...
DroidDraw 是一个基于Java Swing的Android界面设计器,我们可以通过它来生成复杂的Android Layout XML文件,据作者介绍,Android的Layout和Swing Layout中有很好的对应,设计器的代码编写起来还是比较容易的。...
在Android开发中,获取服务器上的资源,如图片和文本,是一项常见的任务。HttpURLConnection是Java提供的一个基础网络连接类,可以用于实现与HTTP服务器的通信。在这个过程中,我们需要理解网络请求的基本原理,以及...
在Android开发中,基于高德地图实现移动轨迹的可视化是一项常用且重要的技术。高德地图API为开发者提供了丰富的功能,包括地图展示、定位、路径规划、轨迹追踪等,使得我们能够在移动应用中轻松地实现地理位置相关...
**ArcGIS for Android DrawTool** 是一款专门为Android平台设计的GIS(地理信息系统)开发工具,它集成在Esri的ArcGIS SDK for Android中。这款工具类使得开发者能够为Android应用程序添加绘制功能,允许用户在地图...
在Android应用开发中,设计美观、用户友好的登录和注册界面是至关重要的,因为它往往是用户与应用程序接触的第一步。这个"Android漂亮好看的登陆,注册界面!程序源码"提供了一个示例,帮助开发者构建吸引人的UI,...
1. **WebView的引入**:在Android应用中,我们需要在布局XML文件中添加WebView组件,并在Java代码中实例化并设置相关属性。例如: ```xml android:id="@+id/webView" android:layout_width="match_parent" ...
在Android Studio中file->import setting 选择解压目录下的Monokai-Sublime.jar,勾选导入color scheme 然后可能需要重启。(在导入monokai配色方案之前先将主题设为darcula,darcula的暗色背景配monokai的鲜艳色彩...
Android Studio支持将不同语言、图片密度等资源拆分到不同的APK中,这样可以针对特定设备或地区提供定制化的APK,减少不必要的资源加载,从而减小包体积。 3. **动态加载(Dynamic Delivery)** Android Studio ...
在Android开发中,粒子效果是一种常见的视觉特效,用于创建如火焰、烟雾、雪花等动态效果,极大地提升了应用的用户体验。本资源包提供了一种无需依赖额外引擎就能在Android平台上实现粒子效果的方法,这对于开发者来...
2. DexOpt与DexFile:在Android中,dex文件是应用程序的执行代码。为了动态加载,我们可能需要将新的.dex文件转换为系统可识别的形式。这涉及到DexOpt过程,它将dex文件优化为odex(optimized dex)格式。同时,Dex...