Android Studio中點9圖片的詳細使用教程

前言: 最近又使用到了。9圖片,因爲之前沒有記錄還是走了不少彎路的。所以好記性不如爛筆頭。在此記錄一下。希望對不明白的同學有所幫助。簡單介紹下點9圖片的作用,比如微信裏的聊天氣泡,因爲我們輸入的內容是隨機的,所以聊天氣泡背景的形狀是不固定的,可大可小,可長可短。這個時候就可以利用1張點9圖片來解決這個變化的問題。


一、選擇一張普通的圖片右鍵,創建我們的.9圖片

這裏我們以ic_launcher爲例,右鍵選擇Create 9-Patch file…

之後就是選擇存儲我們的點9圖片,記住一定要放在drawable文件夾裏


二、編輯點9圖片。

2.1、編輯拉伸區域

圖片上邊和左邊表示的是圖片拉伸區域。可以直接按住鼠標左鍵,想畫筆一樣。畫上你想拉伸的區域。畫上以後,當然也能去調整(當然也能取消,按住shift後相當於橡皮檫功能,按住鼠標左鍵去畫你擦掉的地方即可)

我這裏拉伸了小機器人的頭部和眼睛下面的一小塊。這裏需要額外注意的點:

  • 這個.9圖片要設置在background裏纔會生效。
  • imageView裏的src裏設置是無效的無效的無效的

效果如下(可以看到,除了拉伸區域外變形外,其他區域是保持原來的比例的。無論你的空間多大):


2.2、編輯內容填充區域

圖片的下邊和右邊確定了內容填充的區域。那什麼是內容填充?我們先把下邊和右邊先畫上如圖(這裏我勾選了Show content。在瀏覽圖裏就展示了內容填充區域),我這裏設置的填充區域,剛好是這個小機器人的白色區域。這裏大家可以看下邊和右邊的相交區域,即是填充區域:

這個時候我們把這個點9圖片放置到TextView裏面。然後我們給textView設置文字看看會是什麼效果,可以看到文字內容確實只出現在小機器人白色區域。


三、點9圖片的坑。需要注意

  • 一定要放在drawable裏
  • 一定要放background裏(這裏我非常想解決glide能加載點9的方法。希望有知道的能告知,一定要是自身測試通過的)
  • 還有一個比較特殊的情況,也需要非常注意。當你製作的點9圖片本身png就足夠大的時候,你畫了拉伸區域,當然這個時候確定了不拉伸區域。如果你不拉伸區域裏有logo。你會發現,當你放置這個點9圖片的時候,他還是會變形,變形,變形。原因是自身圖片太大,放置在比較小控件的background時,拉伸區域縮到0是,未拉伸區域的大小還大於控件的大小區域,自然會變形,給人一種點9圖片不生效的感覺。希望注意
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章