Android 资源详解(一) 颜色、字符串、位图资源

颜色资源

颜色值的定义是通过 RGB 三原色和一个 alpha 值来定义的。颜色值定义的开始是一个

井号(刑,后面是 Alpha-Red-Green- Blue 的格式。例如:

#RGB

#ARGB

#RRGGBB

#AARRGGBB

颜色资源位于value文件夹下,新建一个.xml文件,在里面添加代码

<?xml version="1.0" encoding="utf-8"?>

<resources>

<color name="hong">#ff0000</color>

<color name="huang">#00ff00</color>

<color name="lv">#0000ff</color>

</resources>

在资源文件中引用颜色资源:

<TextView android:id="@+id/text1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/str1"
        android:textColor="@color/huang"/>

在布局文件中添加如上代码,引用格式为"@颜色资源文件名/color_name"(@color/huang)

在.java代码中引用颜色资源,在.java中添加如下代码

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    this.getWindow().setBackgroundDrawableResource(R.color.lv);
    //设置背景颜色
    //使用R.color.color_name(R.color,lv)方式引用
    //.......
    }
}

    字符串资源


字符串资源位于value文件夹下,新建一个.xml文件,在里面添加代码

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">HelloABC</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
<string name="str1">Hello Android!!</string>
</resources>

在资源文件中引用字符串资源:

<TextView android:id="@+id/text1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/str1"    <!--str1为定义的字符串资源-->
        android:textColor="@color/huang"/>

在.java中引用字符串资源:

使用函数

getString(R.string.string_name).toString();

eg:

String string = getString(R.string.str1).toString();

位图资源

drawable 资源是一些图片或者颜色资源,主要用来绘制屏幕,通过Resources.get

Drawable() 方法获得。 drawable 资源分为三类: Bitmap File (位图文件)、 Color Drawable

(颜色)、 Nine-Patch Image  (九片图片)。这里只讲述常用的位图文件的使用。

Android 中支持的位图文件有 png 、jpg 和 gif 。


将图片复制到res/drawable文件中,然后刷新项目,项目自动更新,并获得位图id,在R.java中drawable中可以看到。

Ps:图片的名称只能为a-z1-9.png,不能出现大些字母

在布局文件中引用位图:

<ImageView android:id="@+id/pic1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/prenren"/>

如上代码,在Android:src中引用图片源,格式为"@drawable/picture_name"("@drawable/prenren")

在菜单文件中引用位图作为图标:

<item android:title="edit"

android:icon="@drawable/prenren"

</item>

在java代码中可以通过以下方法引用:

ImageView myimageview = (ImageView)findViewById(R.id.imageview1);

Resources r=getResources();
//通过 Resources 获得 Drawable 实例
Drawable d=r.getDrawable(R.drawable.picture_name);
//设置 ImageView 的 ImageDrawable 属性显示图片
maimageview.setImageDrawable(d);

也可以合起来写:

this.getResources().getDrawable(R.drawable.prenren);
时间: 2024-12-16 10:04:53

Android 资源详解(一) 颜色、字符串、位图资源的相关文章

Android 资源详解(二) 菜单资源

菜单资源也是一个XML文件,定义于res/menu/main.xml目录,用R.menu.main引用 典型的菜单资源文件结构是:<menu>根原素,在其中嵌套<item>和<group>子元素,<item>中也可以嵌套<menu>元素. <menu>根元素中没有属性,它包含<item>和<group>元素 <group>表示一个菜单组,相同的属性可以在菜单组中设置 group常见属性如下: id:

Android 菜单详解

Android中菜单分为三种,选项菜单(OptionMenu),上下文菜单(ContextMenu),子菜单(SubMenu) 选项菜单 可以通过两种办法增加选项菜单,一是在menu.xml中添加,该种方式参见Android 资源详解(二) 菜单资源,二是在.java中添加 1.覆盖Activity 的 onCreateOptionsMenu(Menu  menu)方法,当我们第一次打开菜单 时该方法被自动调用. 2.调用Menu的 add()方法添加菜单项(Menultem) ,可以调用Men

Android关键资源详解

Android层次结构中,资源扮演着重要的角色,资源是绑定到可执行程序的文件(例如音乐文件)或值(例如对话框标题).常用的资源实例包括字符串.颜色.布局文件等.例如不需要将字符串硬编码到应用程序中,可以使用它们的ID,这种间接性使你无需要改变源代码就能够更改字符串资源的文本. Android中主要通过两种文件类型来支持资源:XML文件和原始文件(包括图像.音频和视频).甚至在XML文件内部有时也能看到资源被定义为XML文件内部的值(如字符串),有时XML文件整体就是一个资源(如布局资源). XM

android WebView详解,常见漏洞详解和安全源码

这篇博客主要来介绍 WebView 的相关使用方法,常见的几个漏洞,开发中可能遇到的坑和最后解决相应漏洞的源码,以及针对该源码的解析. 由于博客内容长度,这次将分为上下两篇,上篇详解 WebView 的使用,下篇讲述 WebView 的漏洞和坑,以及修复源码的解析. 下篇:android WebView详解,常见漏洞详解和安全源码(下) 转载请注明出处:http://blog.csdn.net/self_study/article/details/54928371. 对技术感兴趣的同鞋加群 54

android WebView详解,常见漏洞详解和安全源码(下)

上篇博客主要分析了 WebView 的详细使用,这篇来分析 WebView 的常见漏洞和使用的坑. 上篇:android WebView详解,常见漏洞详解和安全源码(上) 转载请注明出处:http://blog.csdn.net/self_study/article/details/55046348 对技术感兴趣的同鞋加群 544645972 一起交流. WebView 常见漏洞 WebView 的漏洞也是不少,列举一些常见的漏洞,实时更新,如果有其他的常见漏洞,知会一下我-- WebView

android动画详解六 XML中定义动画

动画View 属性动画系统允许动画View对象并提供很多比view动画系统更高级的功能.view动画系统通过改变绘制方式来变换View对象,view动画是被view的容器所处理的,因为View本身没有要操控的属性.结果就是View被动画了,但View对象本身并没有变化.在Android3.0中,新的属性和相应的getter和setter方法被加入以克服此缺点. 属性动画系统可以通过改变View对象的真实属性来动画Views.而且,View也会在其属性改变时自动调用invalidate()方法来刷

Android Loader详解(官方文档翻译)

装载器从android3.0开始引进.它使得在activity或fragment中异步加载数据变得简单.装载器具有如下特性: 它们对每个Activity和Fragment都有效. 他们提供了异步加载数据的能力. 它们监视数据源的一将一动并在内容改变时传送新的结果. 当由于配置改变而被重新创建后,它们自动重连到上一个加载器的游标,所以不必重新查询数据. 装载器API概述 在使用装载器时,会涉及很多类和接口们,我们在下表中对它们总结一下: Class/Interface 说明 LoaderManag

[gitbook] Android框架分析系列之Android Binder详解

请支持作者原创: https://mr-cao.gitbooks.io/android/content/android-binder.html Android Binder详解 Table of Contents 1. binder简介 2. binder的实现 2.1. IBinder类简介 2.2. IInterface类简介 2.3. BpBinder和BBinder简介 2.4. ProcessState和IPCThreadState简介 2.5. ServiceManager简介 2.

android动画详解三 动画API概述

· 属性动画与view动画的不同之处 view动画系统提供了仅动画View 对象的能力,所以如果你想动画非View 对象,你就要自己实现代码. view动画系统实际上还被强制仅能对 View 的少数属性进行动画,比如缩放和旋转,而不能对背景色进行. view动画的另一个坏处是它仅修改View的绘制位置,而不是View的实际位置.例如,如果你动画一个移动穿越屏幕,button的绘制位置是正确的,但实际你可以点击它的位置却没有变,所以你必须去实现你自己的逻辑来处理它. 使用属性动画系统时,这个限制被

android矩阵详解

Matrix,中文里叫矩阵,高等数学里有介绍,在图像处理方面,主要是用于平面的缩放.平移.旋转等操作. 在Android里面,Matrix由9个float值构成,是一个3*3的矩阵.最好记住.如下图: 解释一下,上面的sinX和cosX,表示旋转角度的cos值和sin值,注意,旋转角度是按顺时针方向计算的. translateX和translateY表示x和y的平移量.scale是缩放的比例,1是不变,2是表示缩放1/2,这样子. 在android.graphics.Matrix中有对应旋转的函