2014-01-18 75 views
-1

我正在爲新應用程序創建佈局,我很想知道您通常如何處理此過程。創建Android佈局文件的過程

顯然這是一個非常普遍的問題,但我認爲我們可以從不同開發人員的角度得到很多想法。在Android中創建完美的佈局,在我看來,是應用程序開發過程中最困難的任務之一,我認爲答案可能是有價值的。

假設是我們希望支持所有尺寸最小的XML文件,而不會影響應用程序設計質量。

在我的情況下,該應用程序的設計者設計了Galaxy S3尺寸(720 x 1280像素)。

考慮到3:4:6:8的比例 -

  1. 會有什麼基礎設備,你會做的設計,所以一個佈局文件會好看就一切正常大小的設備?

  2. 你將如何處理在設備方面的差異,在DP思考 -

EG。

480 X 800 hdpi = 320 X 533dp 
    320 X 480 mdpi = 320 X 480dp 
    720 x 1280 xhdpi = 360 X 640dp 

您將如何仍然使用額外的DP,所以不會有很多空的空間,未做不適合320×480設備的佈局?

  1. 當設計師標記20px的邊距時,你會如何在xml中解釋它?考慮到他在720×1280px的畫布上設計了它。

回答

1

從一些屏幕尺寸開始,作爲您的基本目標設備。 4.7英寸(hdpi)併爲佈局文件夾中的默認屏幕創建單個佈局,並在值文件夾中聲明dimens.xml中的尺寸。

接下來,讓我們假設您需要一個7英寸設備的佈局,縱向爲7創建值 - sw320dp文件夾,並在此文件夾中聲明dimens.xml的單獨尺寸。

接下來,讓我們假設您需要10英寸設備的佈局,縱向創建值爲10的SW720dp文件夾,並在此文件夾中聲明dimens.xml的單獨尺寸。

PS:對於橫向方向,請在文件夾名稱末尾添加-land

接下來,假設您有新設備,例如xhdpixxhdpi設備,您可以創建值-xhdpi和values-xxhdpi文件夾。

由於您已在values文件夾中定義尺寸,因此在運行應用程序時,大多數尺寸將僅在此處使用。並且您可以添加/更新各個文件夾中的尺寸,以獲得任何不匹配的屏幕尺寸和分辨率。

另外,如果你有各種大小不同的可繪像mdpihdpi,等你可以把它們drawable-mdpidrawable-hdpi下等

Android系統將在運行時加載正確的資源的護理。

注:在Android版本< 3.2,文件夾命名爲一點不同,你可以參考該here

希望這會有所幫助。

0

Android會自動縮放佈局以適應當前設備。使解決方案更加優雅的一種方法是創建單獨的文件夾drawable-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi和drawable-xxhdpi來容納可繪製的資源 - 這是爲了確保相同的資源不會得到在所有不同的解決方案中使用它可能不太清楚。 不要在佈局文件中使用px(像素)進行測量 - 使用允許根據設備像素密度縮放的傾角(或與密度無關的像素)。 另一個極端就是針對不同的分辨率有不同的佈局,儘管這是不可取的。