亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android中.9.png圖片的使用及制作

2020-04-11 11:03:58
字體:
來源:轉載
供稿:網友

我們有一個TextView,其里面的內容是可以通過代碼動態改變的,我們想用一張圖片作為TextView的背景,實現類似于手機QQ對話中的氣泡文本效果。

TextView定義如下:

<TextView android:text="@string/hello_world"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:gravity="center"    android:background="@drawable/original" />

背景圖片如下所示:

 這里寫圖片描述

最終TextView的效果如下所示:

 這里寫圖片描述

上圖中的虛線是TextView的外輪廓,我們把TextView的寬度和高度都定義為wrap_content,并且將gravity設置為center,但是還是沒有實現我們理想的狀態。TextView中的文本相對于整個圖片居中了,但是我們想要的效果是文本在綠色的矩形區域內居中。

上圖中的文本較短,展現出的問題還不是很明顯。當我們將TextView中的文本設置為具有一定長度的時候,問題更加突出,如下所示:

這里寫圖片描述

上面這張圖片暴露出兩個問題:

我們原始的圖片是自上而下綠色逐漸變淡,并且右側和下側有陰影。當背景圖被拉伸為上圖大小的時候,圖片失真嚴重:消息框的四個角模糊不清;陰影被模糊放大,比較難看;綠色不清晰,漸變效果也基本看不出來。

文字已經超出了圖片的消息框范圍,雜亂無章。

出現上述問題的原因是,整個背景圖被完全拉伸了,而且拉伸后的圖片的寬高比例與原始圖片的寬高比例不同。如果只對原始圖片矩形消息框中的區域進行拉伸,那么就可以解決上述問題。

為了解決上述問題,我們可以使用Android中的.9.png格式圖片,即Nine-patch。

下面對.9.png格式圖片進行一下說明:

首先,.9.png格式的圖片本身就是.png格式圖片,不過該圖片以.9作為文件名的后綴。我們可以將一個.png圖片轉換成.9.png圖片,.9.png圖片比正常的.png圖片在圖片最外圍的四邊多了1px邊框,我們可以在這最外層的1px邊框上定義圖片的可拉伸區域以及圖片的內容區域。

我們對原始的背景圖進行編輯,可以得到如下的文件名為message.9.png的圖片:

這里寫圖片描述

當我們用該處理過的.9.png圖片作為TextView的背景時,效果如下所示:

 這里寫圖片描述

由上圖我們可以看到,所有文本都居中放到了消息框的矩形區域中,而且圖片沒有失真,保持了原有圖片的質感。

我們可以仔細觀察一下上述的message.9.png這張圖片,可以發現該圖片的最外層的四邊有黑點、黑線,具體來說:

這里寫圖片描述

可以將圖片最上側1px邊框中的一個或多個點設置為黑色,本例中我們用了一條黑色的線段,這些黑色的點定義了圖片中可以被橫向拉伸的區域。 同樣也可以將圖片最左側1px邊框中的一個或多個點設置為黑色,本例中我們只用了一個黑色的像素點,這些黑色的點定義了圖片中可以被縱向拉伸的區域。橫向拉伸像素點與縱向拉伸像素點相交定義了圖片中可拉伸的矩形區域,這樣就實現了對圖片中一部分區域進行拉伸。

我們可以選擇性地對圖片的底邊和右邊設置黑色線段,用這些黑色線段定義圖片的內容區域。當我們圖片里的樣式是不規則圖形的時候,定義圖片的內容區域很重要,TextView中的文本都會放到內容區域中。將圖片最下側1px邊框設置一條黑色線段,該橫向線段定義了圖片的橫向內容區域。將圖片最右側1px邊框 設置一條黑色線段,該縱向線段定義了圖片的縱向內容區域。橫向線段與縱向線段的組成的矩形區域就組成了內容區域。如果不定義圖片的內容區域,那么圖片的內容區域就是整個圖片區域。

.9.png最外側四邊中的像素要么是純透明、純白色,要么是純黑色,不要設置其他顏色和透明度。

我們可以用Photoshop將一個已有的.png編輯成.9.png。其實,Android本身也提供了編輯.9.png的工具,Android/sdk/tools目錄下有很多實用的工具,我們可以使用該目錄下的draw9patch工具對.png圖片進行編輯。

使用步驟如下:

可以通過命令行,也可以通過直接雙擊啟動draw9patch,顯示出GUI界面。

打開“Draw 9-patch”之后,可以直接將一個.png圖片拖拽到GUI界面上,也可以通過File菜單中的“Open 9-patch”菜單項打開.png圖片。左側是圖片編輯區,右側是預覽區。可以在編輯區對圖片的最外層的四邊框設置黑色點,如下圖所示:

這里寫圖片描述

通過鼠標單擊可以將最外層中的像素設置為黑色,通過這種方法可以設置圖片的拉伸區域和圖片的內容區域。按住Shift鍵再單擊黑色像素可以將黑色像素重置為透明。左側的編輯會實時在右側區域顯示出來。右側預覽區中有三個圖片,第一個圖片表示的是垂直方向進行拉伸的預覽效果圖,第二個圖片表示的是水平方向進行拉伸的預覽效果圖,第三個圖片表示的是同時在水平和垂直方向上進行拉伸的預覽效果圖。

在界面下側是控制參數的面板。

這里寫圖片描述

Zoom
通過調節Zoom可以調節左側編輯區域的縮放比例。

Patch scale
通過調節Patch scale可以調節右側預覽區域的縮放比例。

Show lock
我們之前提到了,我們只能編輯圖片最外層1px的邊框,如果勾選了Show lock,那么當我們將鼠標放到左側編輯區域時,那么不可編輯區域會以紅色條紋遮蓋,效果如下所示:

這里寫圖片描述

Show content
當我們勾選了Show content后,右側預覽區中的圖片會把內容區域以藍色表示。

Show patches
當勾選了Show patches后,左側編輯區域中的可拉伸區域會粉紅色高亮顯示出來。

Show bad patches
當我們在top或left邊上設置可拉伸區域設置了連續多個像素時,有可能會造成圖片在拉伸時多個像素顏色進行插值導致失真,如果出現了這種情況會以紅色顯示。

希望本文對大家使用.9.png有所幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产综合久久久久久| 国产在线视频欧美| 欧美日韩国产成人| 啪一啪鲁一鲁2019在线视频| 国产精品久在线观看| 热草久综合在线| 亚洲男人av在线| 国产日本欧美一区二区三区在线| 91福利视频在线观看| 狠狠久久五月精品中文字幕| 亚洲国产成人一区| 国产日韩欧美自拍| 91亚洲精品在线| 亚洲黄页视频免费观看| 欧美色另类天堂2015| 欧美高清激情视频| 国产精品极品美女在线观看免费| 日韩在线国产精品| 欧美成年人网站| 国色天香2019中文字幕在线观看| 亚洲综合在线做性| 欧美激情第6页| 欧美成在线观看| 亚洲成av人片在线观看香蕉| 亚洲最大的成人网| 国产精品久久久久久久久久久不卡| 在线丨暗呦小u女国产精品| 亚洲无限乱码一二三四麻| 国产欧美在线看| 中文字幕一精品亚洲无线一区| 91成人天堂久久成人| 精品久久久久久久大神国产| 国产精品直播网红| 91久久国产综合久久91精品网站| 成人国产精品免费视频| 久久免费视频这里只有精品| 精品国产一区av| 国产精品久久久久久久久久免费| 丝袜情趣国产精品| 中文字幕欧美日韩在线| 日本三级久久久| 久久精品美女视频网站| 国产精品国语对白| 欧美激情亚洲综合一区| 亚洲国产小视频在线观看| 欧美极品在线视频| 欧美特黄级在线| 亚洲女在线观看| 日本国产一区二区三区| 亚洲大胆美女视频| 国产成人鲁鲁免费视频a| 国产亚洲精品久久久优势| 精品国模在线视频| 日韩视频中文字幕| 欧美视频一区二区三区…| 国产精品福利在线观看网址| 日韩美女在线播放| 91人人爽人人爽人人精88v| 2019中文字幕免费视频| 欧美黄色成人网| 国产精品成人国产乱一区| 日本精品va在线观看| 欧美丝袜美女中出在线| 亚洲久久久久久久久久| 国产亚洲精品久久| 欧美一级片免费在线| 在线亚洲男人天堂| 日本欧美一级片| 日本91av在线播放| 69国产精品成人在线播放| 亚洲视频自拍偷拍| 亚洲老头老太hd| 一区二区欧美日韩视频| 狠狠色噜噜狠狠狠狠97| 日韩有码视频在线| 77777少妇光屁股久久一区| 亚洲欧美另类国产| 欧美三级xxx| 欧美性xxxxxxx| 成人免费看吃奶视频网站| 国产精品旅馆在线| 91精品国产色综合久久不卡98| 欧美成人在线影院| 色www亚洲国产张柏芝| 国产日韩欧美夫妻视频在线观看| 亚洲影院色无极综合| 青青草99啪国产免费| 最近2019免费中文字幕视频三| 欧美激情2020午夜免费观看| 国内精品久久久久影院 日本资源| 91tv亚洲精品香蕉国产一区7ujn| 亚洲免费小视频| 中国日韩欧美久久久久久久久| 成人国产在线视频| 国产精品久久久久久一区二区| 国产日韩亚洲欧美| 亚洲人精品午夜在线观看| 69视频在线免费观看| 2024亚洲男人天堂| 欧美日韩激情视频| 亚洲人成亚洲人成在线观看| 国产剧情久久久久久| 欧美亚洲午夜视频在线观看| www高清在线视频日韩欧美| 日韩激情av在线播放| 日韩av资源在线播放| 国产中文字幕日韩| 欧美精品在线观看| 国产一区二区三区免费视频| 国产精品入口日韩视频大尺度| 欧美精品18videosex性欧美| 亚洲欧美中文另类| 久久青草福利网站| 亚洲男女自偷自拍图片另类| 国产成人精品久久亚洲高清不卡| 亚洲第一中文字幕| 91精品国产自产91精品| 亚洲人成网站999久久久综合| 亚洲激情自拍图| 色老头一区二区三区| 日韩在线观看你懂的| 欧美成人精品在线| 夜夜狂射影院欧美极品| 国产亚洲精品久久久久久牛牛| 国产欧美日韩丝袜精品一区| 黄色成人av在线| 欧美一区三区三区高中清蜜桃| 精品视频偷偷看在线观看| 亚洲xxxx3d| 国产性猛交xxxx免费看久久| 亚洲国产中文字幕久久网| 91成人精品网站| 57pao成人国产永久免费| 欧美一级电影免费在线观看| 亚洲精品小视频| 久久久在线视频| 欧美激情视频一区二区三区不卡| 精品夜色国产国偷在线| 亚洲欧洲视频在线| 亚洲а∨天堂久久精品9966| 国产精品亚洲片夜色在线| 亚洲精品国产福利| 亚洲精品色婷婷福利天堂| 久久精品国产久精国产一老狼| 国产精品极品美女粉嫩高清在线| 欧美电影免费观看高清| 亚洲国产另类久久精品| 久久国产精品久久精品| 国产97在线亚洲| 欧美中文在线观看国产| 国产主播喷水一区二区| 精品成人在线视频| 中文字幕日韩视频| 上原亚衣av一区二区三区| 欧美激情精品久久久久久免费印度| 国产精品偷伦免费视频观看的| 国产亚洲激情视频在线| 欧美老女人在线视频| 日韩av免费在线播放| 隔壁老王国产在线精品| 亚洲人线精品午夜| 亚洲成av人片在线观看香蕉| 久久久久成人网| 欧美日韩亚洲视频|