2012-06-01 56 views
4

在我的應用程序中,我有小,正常和大型佈局。最初當我購買三星Galaxy Note時,它配備了android 2.3.3,我在三星Galaxy Note中測試了我的應用程序,當時它需要佈局形式佈局 - 大而且一切正常。三星Galaxy Note沒有從佈局大xml文件更新到Android 4

但是,一旦我更新我的設備到Android 4.它開始採取佈局表單佈局 - 正常,並由於這一些我的頁面對齊更改。所以我想知道爲什麼會發生這種情況,有沒有辦法解決這個問題。

+1

將所有圖像資源放在「drawable-large-hdpi」文件夾中以備註:http://www.mobisoftinfotech.com/blog/android/android-ui-design-tips-for-samsung-galaxy-note/ –

回答

2

設備仍在報告相同的顯示指標。密度/屏幕寬度&高度沒有變化。但是當你升級到ICS(Android 4)時,它開始將顯示度量標準解釋爲普通尺寸屏幕,薑餅(Android 2.3)會說這些完全相同的顯示度量標準是大尺寸屏幕。

來解決這個問題的方法,是針對三星Galaxy Note的其它屏屬於這一怪異的範疇,是創建一個名爲佈局:

layout-large-port-xhdpi-1280x800 

並提出要麼你大或正常佈局在那個資源裏。這將迫使你的三星Galaxy Note使用你喜歡的佈局,以及任一操作系統版本。

+0

沒有工作的三星Galaxy Note N7000 ... – powder366

1

從Android 3.2(API級別13)開始,不推薦使用尺寸組(layout-small,layout-normal,layout-large和layout-xlarge),而應使用dp配置限定符定義佈局資源所需的最小可用寬度。例如,如果您的佈局需要至少600dp的屏幕寬度,則應將其放置在layout-sw600dp /中。

參考:http://developer.android.com/guide/practices/screens_support.html

+1

那麼如果我運行我的應用程序在2.3,其中我有資源sw?我測試過它仍在使用佈局大 – Mikey

+1

其實這是最好的答案,應該被接受爲正確答案。 AFAIK所有大型和xlarge設備現在都支持新的限定符。 Galaxy Note我已經正式升級到ICS和JB。對於較小的屏幕,您可以使用舊的限定符,如佈局正常和佈局小。 – Herrbert74

4

是我在MainActivityonCreate發揮有點與getResources().getConfiguration();,並發現,該設備asuming其最小寬度與400dp,所以我把我的Galaxy Note的佈局在佈局-sw400dp文件夾,它的工作。在設備上安裝了Android 4.0.3。

+0

許多手機的寬度爲400dp。這可能不夠接近。 – sandalone

0

您可以使用layout-sw400dp-land或layout-sw400dp。

即使使用Cianogenmod ROM,Galaxy Note 1也能正常工作。

相關問題