android UI進階之可延伸的映像

來源:互聯網
上載者:User

 

今天就是除夕啦,抽空來寫寫部落格。寫完就去吃年夜飯啦。在這祝大家新的一年裡事業有成,身體健康!

今天來講下android UI設計中常要用到的可延伸映像。除了最基本的png,jpg與gif三種格式外,android還有一種叫做Nine-Patch的可延伸映像.9.png。和png格式不同的是,他會隨著屬性物的大小變化而改變自己的大小,從而來適應屬性物的大小。這個特點,在我們平常的UI設計中是非常實用的。最常見的一個圖片做按鈕背景,來適配字型大小,這時候,你會發現,這種可延伸映像非常的好用。

下面就來講講如何使用吧。Android SDK提供了一個工具來製造這種映像。在android sdk的tools目錄下,有個draw9patch.bat的檔案,就是他啦。運行它,將我們的圖片拖進去,就會得到如下的樣子。

 

左邊視窗的是原始圖形,你可以通過畫面下的Zoom來調整大小,Pathc scale調整png映像最大可以延伸的倍率,延伸後的結果就顯示在右邊的視窗。在一個像素裡點擊,在圖形邊緣繪製線條來定義可延伸的部分。在這邊需要注意的是,你必須至少在圖形的上邊緣和左邊緣畫線,否則將圖片匯入後工程會報錯。調整好以後,點擊File -save,注意需要儲存為*.9.png格式。在程式中的使用和普通圖片完全一樣,這就不講了。

來看下例子

給出xml中的代碼,其中popup為9.png格式,popup1為普通png格式

<?xml version="1.0" encoding="utf-8"?><br /><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"<br /> android:orientation="vertical"<br /> android:layout_width="fill_parent"<br /> android:layout_height="fill_parent"<br /> android:background="#C5CCD4FF"<br /> ><br /><Button<br />android:id="@+id/small"<br />android:layout_width="wrap_content"<br />android:layout_height="wrap_content"<br />android:text="Small"<br />android:textSize="10sp"<br />android:textColor="#ffffffff"<br />android:background="@drawable/popup1"<br />/><br /><Button<br />android:id="@+id/large"<br />android:layout_width="wrap_content"<br />android:layout_height="wrap_content"<br />android:text="LargeNotFit"<br />android:textSize="40sp"<br />android:textColor="#ffffffff"<br />android:background="@drawable/popup1"<br />/><br /><Button<br />android:id="@+id/largefit"<br />android:layout_width="wrap_content"<br />android:layout_height="wrap_content"<br />android:text="LargeFit"<br />android:textSize="40sp"<br />android:textColor="#ffffffff"<br />android:background="@drawable/popup"<br />/><br /></LinearLayout><br /> 

看下啟動並執行效果

 

 

 

合理的使用Nine—Patch映像,在UI設計中是非常重要的。相信大家都能體會到。今天就到這啦,吃年夜飯去啦。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.