2012-11-06 67 views
1

enter image description here應用支持多種屏幕分辨率

我在我的項目3個佈局文件夾:

1.佈局

2.佈局大

3。佈局小

和截至目前我沒有任何東西在佈局 - 小,但佈局具有小尺寸的佈局和佈局大具有大尺寸的佈局。

的問題是:

當我測試我的應用程序一個240x320的它使用的佈局從佈局

當我測試在480x800的我的應用程序,即使現在它使用的佈局從佈局

難道是因爲我以爲我有layout-large,480x800不是int o大屏幕,因此使用默認佈局文件夾?

如果是這樣的話,我怎麼能做出佈局標準屏幕有沒有像佈局正常佈局中

而且,如果我設計我的佈局HVGA(480)它應該很好地工作爲WVGA800(480×800),因爲它們都屬於同下的屏幕尺寸,只有密度的變化。我在任何地方都使用dp。我對嗎?

任何幫助表示讚賞。

+1

像往常一樣,看看這個http://stackoverflow.com/questions/12242111/application-skeleton-to-support-multiple-screen –

+0

http://stackoverflow.com/a/13190408/1487822 –

回答

1

當談到XLARGE,大則取決於大小(英寸)不是在你的設備的DPI小 見下文規範

enter image description here

此外DPI基本上爲Drawables,而SIZE用於佈局。

+0

To請明確點。 1我面臨的主要問題是:我的圖像必須是** Match_parent **的寬度和**父母的一半**的高度。所以在佈局中我會用**寬度= match_parent **的9補丁,但是如何在這裏設置高度?可能不適合**高度= 160dp **考慮** HVGA(320x480)**這不適用於** WVGA800(480x800)** –

+0

不可以,您應該使用LinearLayout作爲基礎,並且在使用'Weight'屬性的子作品中。 –

+0

eww。因此,如果我需要支持所有屏幕尺寸,那麼每個佈局必須只使用LinearLayout和適當的權重。到目前爲止,我正在使用RelativeLayouts,如果必須將它們更改爲LinearLayouts,它將是代碼的三倍:( –

0

是使用下面的細節也可以工作,但我不知道..

res/layout/my_layout.xml    // layout for normal screen size ("default") 
res/layout-small/my_layout.xml  // layout for small screen size 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-xlarge/my_layout.xml  // layout for extra large screen size 
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation 

res/drawable-mdpi/my_icon.png  // bitmap for medium density 
res/drawable-hdpi/my_icon.png  // bitmap for high density 
res/drawable-xhdpi/my_icon.png  // bitmap for extra high density 

試試看....

+0

有沒有什麼正常呢?** layout-normal ** ?? –

+0

type layout總是佈局正常 –

0

你應該檢查這個開發者頁面它幫助了我很多。 http://developer.android.com/guide/practices/screens_support.html

即使他們有不同的分辨率或屏幕尺寸,並不意味着他們有不同的像素密度。例如,大屏幕可能具有比較小屏幕更小的像素密度。

另一個例子是三星Galaxy選項卡是10.1英寸,但仍然是mdpi大和Nexus One是小於5英寸,但使用hdpi。

祝你好運

0

我想我有什麼問題與你........讓我們試試這個。 假設您要使應用程序兼容480x800分辨率。所以首先爲它創建兩個文件夾,即

1.layout-sw480dp這是用於橫向的。

2.layout-sw480dp-port用於縱向模式。

現在,將480X800的分辨率的所有佈局放在它裏面,你會發現它會在特定分辨率下輕鬆運行。

注意:這裏需要注意的是,對於任何設備分辨率,讓A X B佈局文件夾的名稱就是這樣。

1.layout-swAdp。

2.layout-swAdp-port。

這裏「A」是設備的屏幕分辨率高度值。

我希望它適合你。