很多资源都允许您定义颜色。Android接受web风格的颜色定义-一组十六进制的颜色值,按照以下序列排列:#RGB,#ARGB,#RRGGBB,#AARRGGBB。
*所有的颜色都支持ALPHA通道,头两位十六进制数字指定透明度。0在ALPHA通道中表示全透明,默认值是不透明。在编译时,Android生成名为R的类。R包含您应用程序所用到的所有资源的索引。这个类包含一些与res下子目录同名的子类。
这些子类包含每一个您在资源文件中定义的资源的标识。这些资源标识可以在您的代码中引用。注意:R类是自动生成的,并且它不能被手动修改。当资源发生变动时,它会自动修改。
以下是一个生成的R类的示例:
packagecom.android.samples;
publicfinalclassR{
publicstaticfinalclassstring{
publicstaticfinalintgreeting=0x0204000e;
publicstaticfinalintstart_button_text=0x02040001;
publicstaticfinalintsubmit_button_text=0x02040008;
publicstaticfinalintmain_screen_title=0x0204000a;
};
publicstaticfinalclasslayout{
publicstaticfinalintstart_screen=0x02070000;
publicstaticfinalintnew_user_pane=0x02070001;
publicstaticfinalintselect_user_list=0x02070002;
};
publicstaticfinalclassdrawable{
publicstaticfinalintcompany_logo=0x02020005;
publicstaticfinalintsmiling_cat=0x02020006;
publicstaticfinalintyellow_fade_background=0x02020007;
publicstaticfinalintstretch_button_1=0x02020008;
};
};
二、在代码中使用资源
在代码中使用资源需要知道完整的资源ID和您的资源对象类型。下面是资源引用语法:
R.resource_type.resource_name(引用当前应用程序的资源)或者
android.R.resource_type.resource_name(引用android系统的资源)resource_type是R类中保存制定类型资源的子类。resource_name是定义在XML文件中的资源名或者被其他文件类型所定义的资源文件名(无扩展名)每一类型的资源都依据其类型,被添加入某一指定的R子类;引用当前应用程序可以不带包名(比如R.resource_type.resource_name)。
Android包含一个标准资源的序号,比如屏幕的样式和按钮的背景。引用这些资源,您必须使用带android的语法,比如android.R.drawable.button_background。
示例1:
//Loadabackgroundforthecurrentscreenfromadrawableresource.
this.getWindow().setBackgroundDrawableResource(R.drawable.my_background_image);
//WRONGSendingastringresourcereferenceintoa
//methodthatexpectsastring.
this.getWindow().setTitle(R.string.main_title);
//RIGHTNeedtogetthetitlefromtheResourceswrapper.取字符串
this.getWindow().setTitle(Resources.getText(R.string.main_title));
//Loadacustomlayoutforthecurrentscreen.
setContentView(R.layout.main_screen);
//SetaslideinanimationforaViewFlipperobject.
mFlipper.setInAnimation(AnimationUtils.loadAnimation(this,
R.anim.hyperspace_in));
//SetthetextonaTextViewobject.
TextViewmsgTextView=(TextView)findViewByID(R.id.msg);
msgTextView.setText(R.string.hello_message);
三、引用资源
一个属性值(或资源)同样可以引用资源。这种用法常在资源布局器文件中用于文字和图片(定义在其他文件中)。
这种方法可以引用任何资源,包括颜色和整数。
比如,如果我们有一个颜色资源,我们可以写一个布局器文件,在其中指定文本颜色和尺寸。
示例2:
<?xmlversion="1.0"encoding="utf-8"?>
<EditTextid="text"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"android:layout_height="fill_parent"
android:textColor="@color/opaque_red"
android:text="Hello,World!"/>
注意:“
@”前缀声明这是一个资源引用—随后的文本是以@[package:]type/name形式提供的资源名。在这个例子中我们不需要指明特定的包,因为我们在我们自己的包中引用。
四、引用系统资源
引用一个系统资源时,就是@android:type/name的形式。比如示例3.
示例3:
<?xmlversion="1.0"encoding="utf-8"?>
<EditTextid="text"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"android:layout_height="fill_parent"
android:textColor="@android:color/opaque_red"
android:text="Hello,World!"/>
五、使用系统资源
许多包含于系统之中的资源是能被应用程序所访问的。所有的资源被定义在android.R类中。
比如,您可以使用一下代码在屏幕上显示标准应用程序的ICON
示例5:
publicclassMyActivityextendsActivity
{
publicvoidonStart()
{
requestScreenFeatures(FEATURE_BADGE_IMAGE);
super.onStart();
setBadgeResource(android.R.drawable.sym_def_app_icon);
}
}
类似的,下面的代码会更改您的系统主题
示例6:
publicclassMyActivityextendsActivity
{
publicvoidonStart()
{
super.onStart();
setTheme(android.R.style.Theme_Black);
}
}
六、附件
附示例1:
arrays.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<string-arrayname="twarr_indexlist">
<!--<item>!@#</item>-->
<!--<item>123</item>-->
<item>A</item>
<item>B</item>
<item>C</item>
</string-array>
<string-arrayname="arr_indexlist_clock">
<item>+13</item>
<item>+12</item>
<item>+11</item>
</string-array>
</resources>
附示例2:
colors.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<colorname="transparent_color">#00000000</color>
</resources>
附示例3:
dimens.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<dimenname="test_textsize_default">28sp</dimen>
<dimenname="test_itemheight_default">63dp</dimen>
</resources>
附示例4:
strings.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="hello">HelloWorld,\nHello!</string>
<stringname="hi">Hi,hubin!</string>
</resources>
相关推荐
本实例中有对Android各种资源的使用以及界面的跳转等
android 中文文档 android 中文文档 android 中文文档
Android中修改资源Id的值的案例
本文实例讲述了Android中资源文件用法。分享给大家供大家参考,具体如下: 一、XML文件间资源文件的使用 引用格式: attribute=@[packagename:]resourcetype/resourceidentifier example: 有strings.xml、color....
android相关资源jar包android相关资源jar包android相关资源jar包android相关资源jar包android相关资源jar包android相关资源jar包android相关资源jar包
Android中的资源访问 Android中的资源是指非代码部分,指外部文件。 assets中保存的一般是原生的文件,例如MP3文件,Android程序不能直接访问,必须通过AssetManager类以二进制流的形式来读取。 res中的资源可以通过...
Android中实现文字、图片资源国际化案例!
包括Android学习资源很多网址!以及学习过程!
本人打包的一些学习Android的资源,应该对大家有帮助。
汇总的android软件开发资源,对android软件开发有兴趣的可以看看
Android源码资源包,解压到android/platform/相关版本的文件夹内即可使用.ctrl+鼠标左键
Android中使用xml文件定义颜色资源.pdf 学习资料 复习资料 教学资源
可以查看android 应用程序中的图片资源,程序中每个界面的UI布局和UI层级,是个很好用的工具
android获取网络资源
Android读取Assert资源目录下数据库,数据库操作; Android读取Assert资源目录下数据库,数据库操作 Android读取Assert资源目录下数据库,数据库操作
android不同的布局资源介绍,包括LinearLayout、RelativeLayout等
Android中各种图像资源的使用普通图像资源 XML图像资源 Nine-patch图像资源 XML Nine-patch图像资源 图层(Layer)图像资源 图像状态(state)资源 图像级别(Level)资源 淡入淡出(transition)资源 嵌入(Inset)...
Android项目中,通过这个类可以获取资源文件中String.xml中的信息,