久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

Android資源訪(fǎng)問(wèn)-創(chuàng)新互聯(lián)

一、資源訪(fǎng)問(wèn):

專(zhuān)注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)寧城免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

(一)、概念:

  Android中的資源是指可以在代碼中使用的外部文件,這些文件作為應(yīng)用程序的一部分,被編譯到應(yīng)用程序中。在項(xiàng)目中,這些資源被保存到Android應(yīng)用的res目錄下。

(二)、資源分類(lèi):

  1. id;

  2. 字符串資源文件;

  3. 顏色資源

  4. 尺寸資源文件

  5. 布局資源

  6. 數(shù)組資源

  7. 樣式和主題資源

  8. 菜單資源

  9. 已編譯的任意XML資源文件【重要】: res/xml

  10. 未編譯的原始資源文件: res/raw

  11. 圖像(Drawable)資源

    1. 普通圖像資源

    2. xml圖像資源:bitmap

    3. 圖層(Layer)資源:layer-list , item

    4. 圖像狀態(tài)(State)資源:selector , item

    5. 圖像級(jí)別(Level)資源:level-list , item

    6. 淡入淡出(CrossFade)資源:transition , item(只支持兩個(gè))

    7. 外形(Shape)資源:shape(shape , gradient , padding ,corners , stroke)

  12. 動(dòng)畫(huà)資源

  • 透明度補(bǔ)間動(dòng)畫(huà)   alpha

  • 縮放補(bǔ)間動(dòng)畫(huà)   scale

  • 旋轉(zhuǎn)補(bǔ)間動(dòng)畫(huà)   rotate

  • 移動(dòng)補(bǔ)間動(dòng)畫(huà)   translate

  1. 屬性動(dòng)畫(huà):res/animator  (api11之后出現(xiàn))

  2. 逐幀動(dòng)畫(huà): res/anim    animation-list , item

  3. 補(bǔ)間動(dòng)畫(huà):  res/anim

【備注:】資源編譯器會(huì)編譯除了raw資源以外的所有資源,并將它們?nèi)糠诺阶罱K的.apk文件中。apk(Android Package)包含Android應(yīng)用程序的代碼和資源。

(三)、各種資源文件的xml格式:

1、字符串資源文件:

示例代碼:

<resources>
    <string  name="red">紅色</color>
    <string  name="green">綠色</color>
    <string  name="blue">藍(lán)色</color>
</resources>

Java文件中獲取方式:getResources().getString(R.string.red);

2、顏色資源文件:

示例代碼:

<resources>
    <color name="red">#f00</color>
    <color name="green">#0f0</color>
    <color name="blue">#00f</color>
</resources>

在需要調(diào)用該顏色的地方寫(xiě)法是:android:background="@color/blue"

Java文件中獲取方式:getResources().getColor(R.color.blue);

3、尺寸資源文件:

示例代碼:

<resources>
    <dimen  name="title">20dp</color>
    <dimen  name="content">10dp</color>
</resources>

Java文件中獲取方式:getResources().getDimension(R.dimen.title);

4、數(shù)組資源文件:

  Android中,不推薦將數(shù)組直接定義在java文件中,而是使用數(shù)組資源文件來(lái)定義數(shù)組。

  定義在res下values目錄下:arrays.xml文件中。格式如下:

  • 根元素:<resources></resources>

  • 子元素:可以有三種。

    • <array></array>:稱(chēng)為類(lèi)型數(shù)組Typed-Array資源(或者:資源數(shù)組資源)

    • <string-array></string-array>

    • <integer-array></integer-array>

  • 下級(jí)子元素:<item>數(shù)值</item>

示例代碼:

<resources>
    <string-array name="choiceItems"> 
        <item >主屏模式</item>
        <item >wifi設(shè)置</item>
        <item >藍(lán)牙設(shè)置</item>
        <item >網(wǎng)絡(luò)設(shè)置</item>
        <item >More</item>
    </string-array>
</resources>

Java文件中獲取方式:getResources().getStringArray(R.array.choiceItems);

【備注:】如果是int型數(shù)組,則格式如下:

<resources>
    <integer-array name="age"> 
        <item >20</item>
        <item >30</item>
        <item >40</item>
        <item >50</item>
    </integer-array>
</resources>

Java文件中獲取方式:getResources().getIntArray(R.array.age);

【備注:】如果是資源數(shù)組資源,則格式如下:

<resources>
    <array name="icons"> 
        <item >@drawable/home</item>
        <item >@drawable/setting</item>
        <item >@drawable/logout</item>
    </array>
    <array name="title"> 
        <item >首頁(yè)</item>
        <item >設(shè)置</item>
        <item >退出</item>
    </array>
</resources>

Java文件中獲取方式:

TypedArray arrIcons = getResources().obtainTypedArray(R.array.icons);

Drawable drawable = arrIcons.getDrawable(0);

5、原始XML資源

  • 位置:res/xml目錄下;

  • 定義格式:格式良好的,沒(méi)有特殊要求的普通xml文件;

  • Java文件中獲取方式:getResources().getXml(R.xml.文件名稱(chēng));

  • 解析xml的核心代碼:

 // 從資源文件夾中讀取原始xml資源文件    XmlResourceParser pullParser = getResources().getXml(R.xml.citylist);
    //將讀取xml資源文件返回的XmlResourceParser 對(duì)象繼續(xù)解析,獲取到xml節(jié)點(diǎn)中需要的數(shù)據(jù)。
    //備注:XmlResourceParser 類(lèi)是XmlPullParser的子類(lèi)
    public List<Map<String, Object>> parseXML(XmlResourceParser pullParser,
                        String tagName) {
                List<Map<String, Object>> list = null;
                Map<String, Object> map = null;
                int event;
                try {
                        // 根據(jù)讀取的xml節(jié)點(diǎn)來(lái)獲取事件類(lèi)型
                        event = pullParser.getEventType();
                        // 只要不是文檔結(jié)束就一直執(zhí)行循環(huán)
                        while (event != XmlPullParser.END_DOCUMENT) {
                                // 獲取每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)名稱(chēng)
                                String nodeName = pullParser.getName();
                                // 根據(jù)事件類(lèi)型來(lái)執(zhí)行不同的操作
                                switch (event) {
                                // 當(dāng)文檔開(kāi)始就實(shí)例化list
                                case XmlPullParser.START_DOCUMENT:
                                        list = new ArrayList<Map<String, Object>>();
                                        break;
                                // 根據(jù)節(jié)點(diǎn)的不同來(lái)執(zhí)行實(shí)例化map和往map中添加數(shù)據(jù)的操作
                                case XmlPullParser.START_TAG:
                                        if (nodeName.equals(tagName)) {
                                                map = new HashMap<String, Object>();
                                                // 本例中,沒(méi)有文本節(jié)點(diǎn),有n個(gè)屬性節(jié)點(diǎn),而所需要的內(nèi)容全在屬性節(jié)點(diǎn)中。故使用getAttributeValue(index)方法
                                                // getAttributeValue(index)方法中的
                                                // index是指節(jié)點(diǎn)的索引下標(biāo),從0開(kāi)始??梢岳斫獬蓪傩渣c(diǎn) 順序。
                                                map.put(pullParser.getAttributeValue(3),
                                                                pullParser.getAttributeValue(2));
                                                list.add(map);
                                        }
                                        break;
                                }
                                // 執(zhí)行循環(huán)
                                event = pullParser.next();
                        }
                } catch (Exception e) {
                        e.printStackTrace();
                }
                return list;
        }

6、原生文件資源: raw

【備注:】raw目錄下主要放置的資源有音頻、視頻等文件。raw目錄下的文件會(huì)在R.java中被注冊(cè)。

 如何訪(fǎng)問(wèn)raw目錄下的文件?

 InputStream is = getResources().openRawResource(R.raw.文件名);

7、圖像資源:

A、普通圖像資源:

Java文件中獲取方式:
getResources().getDrawable(R.drawable.p_w_picpathname);
int resId = getResources().getIdentifier(imgName, "drawable",  this.getPackageName());
view.getResources().getResourceName(resid)
int resId = context.getResources().getIdentifier("圖片名稱(chēng)", "drawable", context.getPackageName());
p_w_picpathView_main_showpic.setImageResource(resId);

B、xml圖像資源:bitmap

bitmap

android:gravity

C、圖層(Layer)資源:layer-list

<?xml version="1.0"encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:top="10dp"
        android:left="10dp">

        <bitmap
            android:src="@drawable/android1"
            android:gravity="center"/>

    </item>

    <item
        android:top="10dp"
        android:left="10dp">

        <bitmap
            android:src="@drawable/android2"
            android:gravity="center"/>

    </item>

</layer-list>

D、圖像狀態(tài)(State)資源:selector

<?xml version="1.0"encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"android:drawable="@drawable/pressed"/>
    <item android:state_focused="true"android:drawable="@drawable/focused"/>
    <item android:drawable="@drawable/normal"/>
</selector>

E、圖像級(jí)別(Level)資源:level-list

//UI代碼:
<?xml version="1.0"encoding="utf-8"?>
<level-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:drawable="@drawable/lamp_off"
        android:minLevel=“5" android:maxLevel="10"/>

    <item
        android:drawable="@drawable/lamp_on"
        android:minLevel=“11"  android:maxLevel="20"/>

</level-list>
//java代碼:
public class LevelActivity extends Activity {

    private ImageView p_w_picpathview_lamp;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_level);
        p_w_picpathview_lamp = (ImageView) findViewById(R.id.p_w_picpathview_lamp);

    }




    public void clickButton(View view) {

        switch (view.getId()) {

        case R.id.button_level_lampoff:

            p_w_picpathview_lamp.setImageLevel(9);

            break;

        case R.id.button_level_lampon:

            p_w_picpathview_lamp.setImageLevel(15);

            break;
        }
    }
}

F、淡入淡出(CrossFade)資源:transition

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

    <transition xmlns:android="http://schemas.android.com/apk/res/android">

<!-- transition標(biāo)簽中只能有兩個(gè)item標(biāo)簽,也就是只支持兩個(gè)圖像的切換 -->

    <itemandroid:drawable="@drawable/lamp_off"/>

    <itemandroid:drawable="@drawable/lamp_on"/>

</transition>
//java代碼:
public class CrossfadeActivity extends Activity {

    private ImageView p_w_picpathview_lamp;

    private TransitionDrawable drawable = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_crossfade);

        p_w_picpathview_lamp = (ImageView) findViewById(R.id.p_w_picpathview_lamp);

        drawable = (TransitionDrawable) p_w_picpathview_lamp.getDrawable();
    }

    public void clickButton(View view) {

        switch (view.getId()) {

        case R.id.button_level_lampon:

            drawable.startTransition(3000);

            break;

        case R.id.button_level_lampoff:

            drawable.reverseTransition(3000);

            break;

        }
    }
}

G、外形(Shape)資源:shape

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

<shape
    xmlns:android="  android:shape="rectangle">

<!-- shape有四個(gè)值:rectangle(矩形)、oval(橢圓)、line(直線(xiàn))、ring(圓環(huán))-->
<!-- 定義漸變色 ,從左下角到右上角繪制漸變色-->
<gradient
android:startColor="#FF00"
android:endColor="#80FF00FF"
android:angle="45"/>

<!-- 定義控件內(nèi)容到邊界的距離-->

    <padding
        android:left="20dp"
        android:top="20dp"
        android:right="20dp"
        android:bottom="20dp"/>

<!-- 定義邊框線(xiàn)的寬度及顏色-->

    <stroke
        android:width="2dp"
        android:color="#00F"/>

    <!-- 定義圓角半徑-->
    <corners
        android:radius="8dp"/>

</shape>

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

文章標(biāo)題:Android資源訪(fǎng)問(wèn)-創(chuàng)新互聯(lián)
文章來(lái)源:http://sd-ha.com/article10/shhdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站策劃網(wǎng)站內(nèi)鏈、移動(dòng)網(wǎng)站建設(shè)、虛擬主機(jī)、網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名