2013-08-22 130 views
0

我創建suppports多個屏幕的應用程序,我添加了與密度預選賽和大小qulifier我要問的繪製繪製是:需要幫助支持多種屏幕

1 - 如果我有小屏幕高密度或中等的設備什麼設備將選擇哪一種可繪製的選擇小的還是mdpi/hdpi。

2,我怎樣才能把一個限定詞,例如大預選賽繪製大型但這是具體針對平板電腦,這將是不同的,那麼其它設備的大型預選賽......

3,在我的佈局我有textview和圖像,我需要增加我的圖像的大小,因爲設備屏幕大小增加了文本相同的東西...所以我做的最好的解決方案是我放置在佈局 - 小小的圖像與一個14sp的文本,對於大的佈局,我放置了17sp文本大小的較大圖像...這是一個很好的解決方案,否則會導致一些問題...

回答

0

你應該先在自己的res文件夾,這些資料夾:

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 

然後打開並編輯每一個佈局,然後我你ManifestFile補充一點:

<supports-screens android:smallScreens="true" 
     android:normalScreens="true" 
     android:largeScreens="true" 
     android:xlargeScreens="true" 
     android:anyDensity="true" 
     android:resizeable="true"/> 

首先檢查你的Manifest文件創建文件夾後,如果此代碼是在那裏做別的copypaste它...

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 48*48 
res/drawable-hdpi/my_icon.png  // bitmap for high density 72*72 
res/drawable-xhdpi/my_icon.png  // bitmap for extra high density 96*96 

的Android與維和密度 根據自己管理自己,請閱讀所有這些在這裏 http://developer.android.com/guide/practices/screens_support.html

0

針對不同屏幕的多個屏幕尺寸它不是在XML編碼的佈局。它可能是,但PRO的是在應用程序中dinamically。對於像圖片這樣的資源,每個屏幕都需要4種類型的至少1個圖像,如ldpi/mdpi/hdpi/xhdpi/xxhdpi。