2013-11-03 59 views
0

我已閱讀文檔和一些問題,但找不到任何答案。這是我第一個完整的應用程序,我希望它至少可以在不同的屏幕尺寸上正確呈現,因此我使用dp代表單位,sp代表textview。我已經在不同的設備和不同的avd上嘗試過了。我觀察到,在大多數設備上,屏幕尺寸與密度成正比。 (小屏幕有ldpi,普通屏幕有mdpi,大屏幕有hdpi,xlarge屏幕有xhdpi)有了這個,我的默認佈局呈現在遵循這種趨勢的設備上。但是,有些設備並不遵循這個趨勢(例如,如果我沒有弄錯的話,三星Galaxy Tab有很大的mdpi),所以當我嘗試我的佈局時,閃屏(是的,我知道閃屏是煩人和不推薦)是像素化的,文字很小。android:提供資源

我想要發生的是啓動屏幕將取決於屏幕大小和文本大小將取決於屏幕大小&密度。我如何實現這一目標?謝謝。

+0

看看這個[支持多屏幕](http://developer.android.com/guide/practices/screens_support.html)。希望你能得到你的答案。 – androidcodehunter

回答

0

看看這個頁面:Android Devices

它顯示了許多設備及其相應的統計數據是什麼。然後,您需要決定如何最好地針對未正確顯示內容的設備。

我認爲最好的方法是使用不同的值文件夾,您可以根據API級別製作不同的文件夾(如使用API​​ 11或更低版本的所有設備的值-v11)或屏幕大小(如值 - 小值通過值-xlarge)。然後,您創建不同的styles.xml,dimens.xml,甚至colors.xml。

在佈局中,您爲每個小部件提供使用不同維度的樣式,或者可以將維度值放入樣式中,或者可以在佈局文件中的dimens.xml文件中設置值。

您只能在可繪製文件夾(如drawable-hdpi)上使用dpi限定符,因爲位圖不能以dpi和字體以及其他drawable進行縮放。

至於不同的佈局文件夾,我認爲你應該限制他們的肖像與風景,小工具的位置變化。

Galaxy Tab是一款1024 x 600屏幕尺寸的平板電腦。這是你想要有不同的值文件夾(values-xlarge)的地方。您可能還想使用適用於平板電腦的尺寸爲其定義特殊樣式。您將styles.xml,dimens.xml文件放在values-xlarge文件夾中。

因此,是啊,平板電腦將真正拉伸您將用於背景的任何位圖。在這種情況下,你可以有一個不同的drawable。

+0

至於平板電腦,現在我只支持縱向定位。所以我期望平板電腦的行爲類似於手機,但是具有更大的字體和精細的可繪圖。感謝您的建議,但。也許當我有更多時間時,我會嘗試您的平板電腦的建議。 – TheMackyMariano

+0

我也只是在學習。我正在重讀通過閱讀Big Nerd Ranch Android書籍學到的知識,然後在他們的論壇上與他們進行討論。當我意識到dp和sp以dpi進行縮放時,我不得不重做我的應用程序。你真的需要解決肖像和風景壽。非常重要的一個好的應用程序。 –

+0

那本書有pdf嗎?我參考的是Head First Android Dev't,但它只是教會了我的基本知識。有些人,我必須自己學習。 – TheMackyMariano