Android点9图片被放大的问题
原始圖片如下:
點9圖片制作如下:
這里拉伸區域都在正常的位置,4個圓角不會被拉伸,但是顯示到手機上時發現4個圓角模糊了,一時間搞不懂所以然,后來想到Android中有一個目錄叫drawable-nodpi,想想他的作用我就大概明白了,我們把圖片復制一個,改一下名字,因為不能兩張圖片用同一個名字,然后分別存儲到drawable和drawable-nodpi目錄,如下:
如上圖,這兩張點9圖片是一模一樣的,只是文件名不一樣而已,我們在布局中分別使用這兩個圖片作為TextView的背景顯示,效果如下:
如上圖,在AndroidStudio的布局預覽中不太正常,不用管它,我們把它運行到手機上,效果如下:
如上圖,上一個TextView的背景圖是被放大了,看邊框線條的大小就知道了,而下面一個TextView的線條大小是保持原樣大小的,我這是把手機的畫面投到電腦上,以1比1的比例顯示的,如果直接看手機上的效果,因為手機屏幕比較小,不太容易發現線條被放大了,在電腦上,我們把原圖也一起貼過來,以1比1顯示,以進行對比,這樣就能很清楚的看到保存在drawable目錄的圖片的線條被放大了,而保存在drawablea-nodpi目錄下的圖片線條是保持原樣的,效果如下:
總結:與分辨率大小無關的圖片(比如點9圖片)要放到drawable-nodpi目錄,不要放到其它目錄,否則會被拉伸。
后續:其實放到nodpi也不一定對,因為這樣的話,不管放到什么手機上,線條寬度都不會乘以相應的密度,所以,在設置圖片的時候,應該要按照相應的分辨率來設計圖片,然后把點9圖片放到對應分辨率的目錄下,比如:drawable-xhdpi、drawable-xxhdpi等等。
總結
以上是生活随笔為你收集整理的Android点9图片被放大的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Piranha介绍:过期代码自动删除的开
- 下一篇: js下载跨域的文件