《Android移動(dòng)應(yīng)用開(kāi)發(fā)》Android資源配置與管理_第1頁(yè)
《Android移動(dòng)應(yīng)用開(kāi)發(fā)》Android資源配置與管理_第2頁(yè)
《Android移動(dòng)應(yīng)用開(kāi)發(fā)》Android資源配置與管理_第3頁(yè)
《Android移動(dòng)應(yīng)用開(kāi)發(fā)》Android資源配置與管理_第4頁(yè)
《Android移動(dòng)應(yīng)用開(kāi)發(fā)》Android資源配置與管理_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

資源的創(chuàng)建與引用2024/1/29012024/1/29資源的種類(lèi)引用資源目錄CONTENT12資源的適配3參考教材:《Android應(yīng)用開(kāi)發(fā)項(xiàng)目化教程》資源的種類(lèi)2大類(lèi)assetsassets類(lèi)資源放在工程根目錄的assets子目錄下,它里面保存的是一些原始的文件,可以以任何方式來(lái)進(jìn)行組織。這些文件最終會(huì)被原裝不動(dòng)地打包在apk文件中。如果我們要在程序中訪問(wèn)這些文件,那么就需要指定文件名來(lái)訪問(wèn)。1AssetManager

am=

getAssets();

InputStream

is

=

assset.open("filename");

資源的種類(lèi)2大類(lèi)resres類(lèi)資源放在工程根目錄的res子目錄下,它里面保存的文件大多數(shù)都會(huì)被編譯,并且都會(huì)被賦予資源ID。這樣就可以在程序中通過(guò)ID來(lái)訪問(wèn)res類(lèi)的資源。19種resanimatoranimcolordrawablelayoutmenurawvaluesxml注意:資源的命名規(guī)則資源的種類(lèi)res資源animator以XML文件保存在res/animator目錄下,用來(lái)描述屬性動(dòng)畫(huà)。屬性動(dòng)畫(huà)通過(guò)改變對(duì)象的屬性來(lái)實(shí)現(xiàn)動(dòng)畫(huà)效果,例如,通過(guò)不斷地修改對(duì)象的坐標(biāo)值來(lái)實(shí)現(xiàn)對(duì)象移動(dòng)動(dòng)畫(huà),又如,通過(guò)不斷地修改對(duì)象的Alpha通道值來(lái)實(shí)現(xiàn)對(duì)象的漸變效果。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>

資源的種類(lèi)res資源anim以XML文件保存在res/anim目錄下,用來(lái)描述補(bǔ)間動(dòng)畫(huà)。補(bǔ)間動(dòng)畫(huà)和屬性動(dòng)畫(huà)不同,它不是通過(guò)修改對(duì)象的屬性來(lái)實(shí)現(xiàn),而是在對(duì)象的原來(lái)形狀或者位置的基礎(chǔ)上實(shí)現(xiàn)一個(gè)變換來(lái)得到的,例如,對(duì)對(duì)象施加一個(gè)旋轉(zhuǎn)變換,就可以獲得一個(gè)旋轉(zhuǎn)動(dòng)畫(huà)。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>

資源的種類(lèi)res資源color以XML文件保存在res/color目錄下,用描述對(duì)象顏色狀態(tài)選擇子。例如,我們可以定義一個(gè)選擇,規(guī)定一個(gè)對(duì)象在不同狀態(tài)下顯示不同的顏色。對(duì)象的狀態(tài)可以劃分為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>

資源的種類(lèi)res資源drawable以XML或者Bitmap文件保存在res/drawable目錄下,用來(lái)描述可繪制對(duì)象。例如,我們可以在里面放置一些圖片(.png,.9.png,.jpg,.gif),來(lái)作為程序界面視圖的背景圖。注意,保存在這個(gè)目錄中的Bitmap文件在打包的過(guò)程中,可能會(huì)被優(yōu)化,以減少圖片所占用的內(nèi)存資源。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>

資源的種類(lèi)res資源layout以XML文件保存在res/layout目錄下,用來(lái)描述應(yīng)用程序界面布局。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>

資源的種類(lèi)res資源menu以XML文件保存在res/menu目錄下,用來(lái)描述應(yīng)用程序菜單,例如,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>

資源的種類(lèi)res資源raw以任意格式的文件保存在res/raw目錄下,它們和assets類(lèi)資源一樣,都是原裝不動(dòng)地打包在apk文件中的,不過(guò)它們會(huì)被賦予資源ID,這樣我們就可以在程序中通過(guò)ID來(lái)訪問(wèn)它們。1Resourcesres=getResources();InputStreamis=res.openRawResource(R.raw.filename);

資源的種類(lèi)res資源values以XML文件保存在res/values目錄下,用來(lái)描述一些簡(jiǎn)單值,例如,數(shù)組、顏色、尺寸、字符串和樣式值等,一般來(lái)說(shuō),這六種不同的值分別保存在名稱(chēng)為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>

資源的種類(lèi)res資源xml以XML文件保存在res/xml目錄下,一般就是用來(lái)描述應(yīng)用程序的配置信息。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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論