《Android移动应用开发》Android资源配置与管理_第1页
《Android移动应用开发》Android资源配置与管理_第2页
《Android移动应用开发》Android资源配置与管理_第3页
《Android移动应用开发》Android资源配置与管理_第4页
《Android移动应用开发》Android资源配置与管理_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

资源的创建与引用2024/1/29012024/1/29资源的种类引用资源目录CONTENT12资源的适配3参考教材:《Android应用开发项目化教程》资源的种类2大类assetsassets类资源放在工程根目录的assets子目录下,它里面保存的是一些原始的文件,可以以任何方式来进行组织。这些文件最终会被原装不动地打包在apk文件中。如果我们要在程序中访问这些文件,那么就需要指定文件名来访问。1AssetManager

am=

getAssets();

InputStream

is

=

assset.open("filename");

资源的种类2大类resres类资源放在工程根目录的res子目录下,它里面保存的文件大多数都会被编译,并且都会被赋予资源ID。这样就可以在程序中通过ID来访问res类的资源。19种resanimatoranimcolordrawablelayoutmenurawvaluesxml注意:资源的命名规则资源的种类res资源animator以XML文件保存在res/animator目录下,用来描述属性动画。属性动画通过改变对象的属性来实现动画效果,例如,通过不断地修改对象的坐标值来实现对象移动动画,又如,通过不断地修改对象的Alpha通道值来实现对象的渐变效果。1<set

android:ordering="sequentially">

<set>

<objectAnimator

android:propertyName="x"

android:duration="500"

android:valueTo="400"

android:valueType="intType"/>

<objectAnimator

android:propertyName="y"

android:duration="500"

android:valueTo="300"

android:valueType="intType"/>

</set>

<objectAnimator

android:propertyName="alpha"

android:duration="500"

android:valueTo="1f"/>

</set>

资源的种类res资源anim以XML文件保存在res/anim目录下,用来描述补间动画。补间动画和属性动画不同,它不是通过修改对象的属性来实现,而是在对象的原来形状或者位置的基础上实现一个变换来得到的,例如,对对象施加一个旋转变换,就可以获得一个旋转动画。1<set

xmlns:android="/apk/res/android"

android:shareInterpolator="false">

<scale

android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:fromXScale="1.0"

android:toXScale="1.4"

android:fromYScale="1.0"

android:toYScale="0.6"

android:pivotX="50%"

android:pivotY="50%"

android:fillAfter="false"

android:duration="700"

/>

<set

android:interpolator="@android:anim/accelerate_interpolator"

android:startOffset="700">

<scale

android:fromXScale="1.4"

android:toXScale="0.0"

android:fromYScale="0.6"

android:toYScale="0.0"

android:pivotX="50%"

android:pivotY="50%"

android:duration="400"

/>

<rotate

android:fromDegrees="0"

android:toDegrees="-45"

android:toYScale="0.0"

android:pivotX="50%"

android:pivotY="50%"

android:duration="400"

/>

</set>

</set>

资源的种类res资源color以XML文件保存在res/color目录下,用描述对象颜色状态选择子。例如,我们可以定义一个选择,规定一个对象在不同状态下显示不同的颜色。对象的状态可以划分为pressed、focused、selected、checkable、checked、enabled和window_focused等7种。1<?xmlversion="1.0"encoding="utf-8"?>

<selector

xmlns:android="/apk/res/android">

<item

android:state_pressed="true"

android:color="#ffff0000"/>

<!--pressed-->

<item

android:state_focused="true"

android:color="#ff0000ff"/>

<!--focused-->

<item

android:color="#ff000000"/>

<!--default-->

</selector>

资源的种类res资源drawable以XML或者Bitmap文件保存在res/drawable目录下,用来描述可绘制对象。例如,我们可以在里面放置一些图片(.png,.9.png,.jpg,.gif),来作为程序界面视图的背景图。注意,保存在这个目录中的Bitmap文件在打包的过程中,可能会被优化,以减少图片所占用的内存资源。1<?xmlversion="1.0"encoding="utf-8"?>

<selector

xmlns:android="/apk/res/android">

<item

android:state_pressed="true"

android:drawable="@drawable/button_pressed"

/>

<!--pressed-->

<item

android:state_focused="true"

android:drawable="@drawable/button_focused"

/>

<!--focused-->

<item

android:state_hovered="true"

android:drawable="@drawable/button_focused"

/>

<!--hovered-->

<item

android:drawable="@drawable/button_normal"

/>

<!--default-->

</selector>

资源的种类res资源layout以XML文件保存在res/layout目录下,用来描述应用程序界面布局。1<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayout

xmlns:android="/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

>

<TextView

android:id="@+id/text"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Hello,IamaTextView"

/>

<Button

android:id="@+id/button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Hello,IamaButton"

/>

</LinearLayout>

资源的种类res资源menu以XML文件保存在res/menu目录下,用来描述应用程序菜单,例如,OptionsMenu、ContextMenu和SubMenu。1<menu

xmlns:android="/apk/res/android">

<item

android:id="@+id/item1"

android:title="@string/item1"

android:icon="@drawable/group_item1_icon"

android:showAsAction="ifRoom|withText"/>

<group

android:id="@+id/group">

<item

android:id="@+id/group_item1"

android:onClick="onGroupItemClick"

android:title="@string/group_item1"

android:icon="@drawable/group_item1_icon"

/>

<item

android:id="@+id/group_item2"

android:onClick="onGroupItemClick"

android:title="@string/group_item2"

android:icon="@drawable/group_item2_icon"

/>

</group>

<item

android:id="@+id/submenu"

android:title="@string/submenu_title"

android:showAsAction="ifRoom|withText"

>

<menu>

<item

android:id="@+id/submenu_item1"

android:title="@string/submenu_item1"

/>

</menu>

</item>

</menu>

资源的种类res资源raw以任意格式的文件保存在res/raw目录下,它们和assets类资源一样,都是原装不动地打包在apk文件中的,不过它们会被赋予资源ID,这样我们就可以在程序中通过ID来访问它们。1Resourcesres=getResources();InputStreamis=res.openRawResource(R.raw.filename);

资源的种类res资源values以XML文件保存在res/values目录下,用来描述一些简单值,例如,数组、颜色、尺寸、字符串和样式值等,一般来说,这六种不同的值分别保存在名称为arrays.xml、colors.xml、dimens.xml、strings.xml和styles.xml文件中。1<?xmlversion="1.0"encoding="utf-8"?>

<resources>

<string

name="string_name">text_string</string>

</resources>

<?xmlversion="1.0"encoding="utf-8"?>

<resources>

<string-array

name="planets_array">

<item>Mercury</item>

<item>Venus</item>

<item>Earth</item>

<item>Mars</item>

</string-array>

</resources>

资源的种类res资源xml以XML文件保存在res/xml目录下,一般就是用来描述应用程序的配置信息。1<PreferenceScreen

xmlns:android="/apk/res/android">

<PreferenceCategory

android:title="@string/inline_preferences">

<CheckBoxPreference

android:key="checkbox_preference"

android:title="@string/title_checkbox_preference"

android:summary="@string/summary_checkbox_preference"

/>

</PreferenceCategory>

<PreferenceCategory

android:title="@string/dialog_based_preferences">

...

</PreferenceCategory>

</PreferenceScreen>

引用资源animator

InJava:

R.animator.filename

InXML:

@[package:]animator/filename

2AnimatorSet

set

=

(AnimatorSet)

AnimatorInflater.loadAnimator(myContext,

R.anim.property_animator);

set.setTarget(myObject);

set.start();

引用资源anim

InJava:

R.anim.filename

InXML:

@[package:]anim/filename

2ImageViewimage=

(ImageView)findViewById(R.id.image);

AnimationhyperspaceJump=

AnimationUtils.loadAnimation(this,R.anim.hyperspace_jump);

image.startAnimation(hyperspaceJump);

引用资源color

InJava:

R.color.filename

InXML:

@[package:]color/filename

2<Button

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/button_text"

android:textColor="@color/button_text"

/>

引用资源drawable

InJava:

R.drawable.filename

InXML:

@[package:]drawable/filename

2<Button

android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:background="@drawable/button"

/>

引用资源layout

InJava:

R.layout.filename

InXML:

@[package:]layout/filename

2public

voidonCreate(BundlesavedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.main_activity);

}

引用资源menu

InJava:

R.menu.filename

InXML:

@[package:]menu/filename

2public

booleanonCreateOptionsMenu(Menumenu)

{

MenuInflaterinfla

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论