2017-05-28 35 views
-1

我是android studio的新成員,計劃爲平板電腦和手機設計應用程序。因此我的應用程序將主要用於普通和大屏幕。在矢量圖標上使用正確的dpi

  • 其中dpi是最適合我的矢量圖標?
  • 我應該爲多屏支持製作相同圖標的不同dpi版本嗎?
  • 爲什麼只製作圖標wrap_content不支持多種屏幕尺寸。我認爲矢量圖像在變形時不會模糊。

回答

1

向量可繪

顧名思義,向量可繪基於矢量圖形,而不是光柵圖形,矢量圖形是描述使用幾何形狀的圖形元素的一種方式。它類似於SVG文件。 Android Vector Vector Drawable被創建爲XML文件。現在有沒有必要建立不同大小的圖像mdpihdpixhdpixxhdpixxxhdpi等,我們只需要一個多屏幕尺寸設備矢量文件。此外,對於不支持矢量繪圖的舊版Android,Vector Asset Studio可以在運行時將每個屏幕密度的矢量繪圖變成不同的位圖大小。

越小越好

對於Android,光柵化方法,其一個VectorDrawable轉換成一個位圖發生在CPU上。因此,創建圖像所需的處理時間與圖像本身的分辨率/尺寸之間大都存在線性關係。將三角形光柵化爲16x16像素紋理可能只需要計算總計8-12像素的顏色碎片。對一個1024x1024紋理做同樣的處理會觸及超過十萬個像素,這顯然需要更多的時間來完成。 因此,隨着紋理尺寸的增大,將會成爲一個盈虧平衡點,加載時間會變得非常重要,並且使用Vector Drawable也不再有意義。

+0

好的,我應該堅持使用默認的24dp矢量圖標。我不認爲他們中的幾個不會使加載時間更長。 – gunessun

+0

它取決於你,但使用一個24或36或48它取決於你在哪裏使用 –

1

矢量圖標的「dpi」沒有意義。矢量圖標是獨立的DPI。這是他們的重點。不管你設計的尺寸是多少。它只會在運行時畫出(渲染)它們的大小。顯示的尺寸越大,需要計算和繪製的像素越多。

這就是在@穆罕默德younas答案(這是從this Colt McAnlis blog)第二段是想說。