2010-04-21 21:54:01
1. 相关文件夹介绍
目录Directory |
资源类型Resource Types |
res/anim/ |
XML文件,它们被编译进逐帧动画(frame by frame animation)或补间动画(tweened animation)对象 |
res/drawable/ |
.png、.9.png、.jpg文件,它们被编译进以下的Drawable资源子类型中: 要获得这种类型的一个资源,可以使用Resource.getDrawable(id) 为了获取资源类型,使用mContext.getResources().getDrawable(R.drawable.imageId) 注意:放在这里的图像资源可能会被aapt工具自动地进行无损压缩优化。比如,一个真彩色但并不需要256色的PNG可能会被转换为一个带调色板的8位PNG。这使得同等质量的图片占用更少的资源。所以我们得意识到这些放在该目录下的二进制图像在生成时可能会发生变化。如果你想读取一个图像位流并转换成一个位图(bitmap),请把图像文件放在res/raw/目录下,这样可以避免被自动优化。 |
res/layout/ |
被编译为屏幕布局(或屏幕的一部分)的XML文件。参见布局声明(Declaring Layout) |
res/values/ |
可以被编译成很多种类型的资源的XML文件。 注意: 不像其他的res/文件夹,它可以保存任意数量的文件,这些文件保存了要创建资源的描述,而不是资源本身。XML元素类型控制这些资源应该放在R类的什么地方。 尽管这个文件夹里的文件可以任意命名,不过下面使一些比较典型的文件(文件命名的惯例是将元素类型包含在该名称之中): array.xml 定义数组 colors.xml 定义color drawable和颜色的字符串值(color string values)。使用Resource.getDrawable()和Resources.getColor()分别获得这些资源。 dimens.xml定义尺寸值(dimension value)。使用Resources.getDimension()获得这些资源。 strings.xml定义字符串(string)值。使用Resources.getString()或者Resources.getText()获取这些资源。getText()会保留在UI字符串上应用的丰富的文本样式。 styles.xml 定义样式(style)对象。 |
res/xml/ |
任意的XML文件,在运行时可以通过调用Resources.getXML()读取。 |
res/raw/ |
直接复制到设备中的任意文件。它们无需编译,添加到你的应用程序编译产生的压缩文件中。要使用这些资源,可以调用Resources.openRawResource(),参数是资源的ID,即R.raw.somefilename。 |
2.自动生成的R class
3. 在代码中使用资源
- // Load a background for the current screen from a drawable resource.
- this.getWindow().setBackgroundDrawableResource(R.drawable.my_background_image);
- // WRONG Sending a string resource reference into a
- // method that expects a string.
- this.getWindow().setTitle(R.string.main_title);
- // RIGHT Need to get the title from the Resources wrapper.
- this.getWindow().setTitle(Resources.getText(R.string.main_title));
- // Load a custom layout for the current screen.
- setContentView(R.layout.main_screen);
- // Set a slide in animation for a ViewFlipper object.
- mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
- R.anim.hyperspace_in));
- // Set the text on a TextView object.
- TextView msgTextView = (TextView)findViewByID(R.id.msg);
- msgTextView.setText(R.string.hello_message);
- //在屏幕上显示标准应用程序的图标
- public class MyActivity extends Activity {
- public void onStart() {
- requestScreenFeatures(FEATURE_BADGE_IMAGE);
- super.onStart();
- setBadgeResource(android.R.drawable.sym_def_app_icon);
- }
- }
- //应用系统定义的标准"绿色背景"视觉处理
- public class MyActivity extends Activity
- public void onStart() {
- super.onStart();
- setTheme(android.R.style.Theme_Black);
- }
- }
4. xml文件内引用资源
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="hello">Hello World, HelloDemo!</string>
- </resources>
5. 替换资源(为了可替换的资源和配置)
6. Color Value
- <color name="color_name">#color_value</color>
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <color name="opaque_red">#f00</color>
- <color name="translucent_red">#80ff0000</color>
- </resources>
7.Color Drawables
- <drawable name="color_name">color_value</drawable>
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <drawable name="opaque_red">#f00</drawable>
- <drawable name="translucent_red">#80ff0000</drawable>
- </resources>
8. 图片
9. dimension
- <dimen name="dimen_name">dimen_value单位</dimen>
Java: float dimen = Resources.getDimen(R.dimen.some_name)
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <dimen name="one_pixel">1px</dimen>
- <dimen name="double_density">2dp</dimen>
- <dimen name="sixteen_sp">16sp</dimen>
- </resources>
10. string
- //不使用转义符则需要用双引号包住整个string
- <string name="good_example">"This'll work"</string>
- //使用转义符
- <string name="good_example_2">This\'ll also work</string>
- //错误
- <string name="bad_example">This won't work!</string>
- //错误 不可使用html转义字符
- <string name="bad_example_2">XML encodings won't work either!</string>
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="simple_welcome_message">Welcome!</string>
- <string name="styled_welcome_message">We are <b><i>so</i></b> glad to see you.</string>
- </resources>
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:textAlign="center"
- android:text="@string/simple_welcome_message"/>
- // Assign a styled string resource to a TextView on the current screen.
- CharSequence str = getString(R.string.styled_welcome_message);
- TextView tv = (TextView)findViewByID(R.id.text);
- tv.setText(str);
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="search_results_resultsTextFormat">%1$d results for <b>&quot;%2$s&quot;</b></string>
- </resources>
- //title是我们想赋值给%2$s的字符串
- String escapedTitle = TextUtil.htmlEncode(title);
- String resultsTextFormat = getContext().getResources().getString(R.string.search_results_resultsTextFormat);
- String resultsText = String.format(resultsTextFormat, count, escapedTitle);
- CharSequence styledResults = Html.fromHtml(resultsText);
11. assets文件夹资源的访问
本文出自 “学习Android” 博客,请务必保留此出处http://android.blog.51cto.com/268543/302529
相关推荐
本示例着重介绍Android中常用的资源类型及其使用方法。 1. String资源 在res/values/strings.xml文件中,我们可以定义字符串资源,便于在整个应用中复用和国际化。例如: ```xml 我的应用 你好,世界! ``` 在Java...
在Android 7的SDK中,开发者可以研究各种资源代码示例,了解如何有效地组织和使用资源。 3. **Sample Resources** SDK中的sample资源是实际应用中的实例,它们展示了如何在实践中使用Android API。这些样本涵盖了...
简单Android学习代码,无聊打发时间看一下也行
Android系统会自动处理资源的加载和组织,以便在运行时根据设备特性(例如屏幕尺寸、语言设置等)适当地使用资源。 标题“Android resource Table”指的是Android应用程序中用于管理和组织各种资源的结构。这个表...
本指南旨在帮助开发者理解如何在Android项目中使用Gradle构建工具,从基本概念到高级定制技巧均有涉猎。随着Gradle版本的不断更新和完善,建议开发者持续关注官方文档以获取最新信息和技术支持。此外,社区资源也是...
Android WebView 报 Not allowed to load local resource错误的解决办法 博客地址:http://blog.csdn.net/yuzhiqiang_1993/article/details/76228541
例如,使用Android Asset Studio可以快速调整PNG图标的大小和颜色,生成适用于不同密度的版本。同时,通过压缩和优化PNG文件,可以降低应用的体积,提高加载速度。 在使用这些PNG资源时,开发者应注意遵循Android的...
总结来说,Android中使用XML文件定义颜色资源是一种规范且灵活的方法,它能帮助开发者更好地组织和重用颜色信息。通过在`colors.xml`中定义颜色,然后在布局文件、`drawable`资源或代码中引用,可以提高代码的可读性...
综上所述,"android resource doc" 对于理解API级别8的Android资源系统至关重要,它提供了详细的操作指南和示例,帮助开发者更高效地管理和使用应用资源,从而提高代码的可维护性和用户体验。通过深入学习这些知识,...
文章指出,Resource sharing APP采用C/S模式,客户端基于Android平台,使用Eclipse进行开发,而后台服务端则是Web形式,利用B/S框架Visual Studio构建。系统设计包括手机端的三大模块:首页、兼职、个人中心,以及PC...
android-resource-remover android-resource-remover is utility that removes unused resources reported by Android Lint from your project. The goal is to reduce your APK size and keep the app clean from ...
这个名为`android-resource-remover-0.1.4.tar.gz`的压缩包,包含了这个实用库的源代码和相关文档,旨在帮助开发者轻松移除不再使用的Android资源,优化应用的大小和性能。 首先,`android-resource-remover`库的...
详细和全面演示了Android各种资源的定义和使用方法及其效果,可以在Android5.0以上系统运行,
Android Resource Navigator A Google Chrome Extension providing enhanced resource navigation for GitHub hosted Android projects. Features Linkified XML resources Android XML resources viewed on GitHub...
本篇文章将详细介绍如何在Android项目中使用WebP,以实现图片资源的高效压缩。 首先,我们需要了解WebP的基本特性。WebP结合了VP8视频编解码器的有损压缩和无损压缩技术,能够提供比JPEG更优秀的压缩效果,同时支持...
baby_android_resource
在本资源包中,我们探讨的是使用C#语言和Mono for Android框架开发Android应用程序的方法。 Mono for Android是Xamarin公司(现已被微软收购)推出的一个工具,它允许开发者利用.NET Framework和C#来构建原生的...
Android Recovery是Android操作系统中的一个重要组成部分,它是一种特殊模式,用于在系统崩溃、更新失败或需要执行其他恢复操作时恢复和修复设备。这个资源是针对Android Recovery的1.62版本,是一个宝贵的开源代码...
"Android xml资源文件中@、@android、@+以及问号的使用详解" Android xml资源文件中@、@android、@+以及问号...四种类型的资源引用方式都有其特定的应用场景,合理使用它们可以提高Android应用程序的开发效率和性能。
首先,ListView的使用涉及到两个核心概念:Adapter和ViewHolder。Adapter是连接数据源与ListView的桥梁,它负责将数据转化为可显示的View。ViewHolder模式则可以优化ListView的滚动性能,通过复用已创建的View来避免...