2013-07-25 56 views
0

Android的大小我是一個3.6" 的屏幕,480個* 850像素,從一個朋友說考驗我的應用程序,這是工作的罰款,所有圖像顯示出來。在不同的手機

我部署它,並得到了電子郵件大約20%的應用程序從底部被削減,她正在使用3.7英寸320 x 480像素的屏幕。

有沒有解決這個問題?我認爲Android擴展了所有的比例。

我只在我的應用程序中使用hdpi文件夾。

+0

如果您使用單個佈局和單個可繪製文件夾,則在佈局中使用滾動視圖 –

+0

這是一個奇怪的解決方法。我希望用戶在特定的時間查看屏幕上的所有內容。 – Alexey

+0

這不是一個奇怪的解決方法。這是正確的做法。否則,你應該以這樣的方式編寫你的應用程序,以擴展到單屏幕視圖。您可以使用LinearLayout和Weights根據屏幕的百分比將數據放在屏幕上。很顯然,如果是這種情況,你最外面的佈局應該設置爲match_parent的layout_width和layout_height。那麼一切都將被照顧,沒有滾動。但是再次,滾動是應用程序本意的構建方式。 – spierce7

回答

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

將此添加到您的清單文件的應用程序。

2

你必須爲圖像使用mdpi,hdpi和ldpi文件夾。Android應用程序將自己作爲其分辨率,因此請使用其中的三個,如果要在所有設備中支持您的應用程序,則還應該使用佈局/大,佈局/介質,佈局/ XLARGE,佈局/小。

更多的信息參考,this鏈接

的,你必須讓你的menifest文件還 如

<supports-screens android:resizeable=["true"| "false"] 
         android:smallScreens=["true" | "false"] 
         android:normalScreens=["true" | "false"] 
         android:largeScreens=["true" | "false"] 
         android:xlargeScreens=["true" | "false"] 
         android:anyDensity=["true" | "false"] 
         android:requiresSmallestWidthDp="integer" 
         android:compatibleWidthLimitDp="integer" 
         android:largestWidthLimitDp="integer"/> 

爲參考this鏈接

1

Android將不會延長一些變化實際的屏幕。它會在某些情況下拉伸圖像,但這聽起來不像是你的問題。

首先,我強烈建議您至少獲得mdpi,hdpi和xhdpi的適當大小的圖像。 mdpi是用標準的72分辨率繪製的,然後比較hdpi是1.5X mdpi,而xhdpi是2.0X mdpi。其次,如果您正確編程屏幕組件,則使用的是密度獨立像素(dip或dp),文本的大小與sp相同。這意味着無論您使用的是多大尺寸的屏幕,都會顯示相同的尺寸。所以不會出現這種情況,但是Android的規模保持不變(這非常好)。這意味着在某些屏幕上,您的應用將顯示在整個屏幕上,而在其他較小的屏幕設備上,它只能顯示一部分屏幕。這聽起來像是怎麼回事。您需要能夠滾動您的內容,因此在您的主佈局文件中,將該子項作爲ScrollView。這是處理您的問題的正確方法。

編輯:你可以這樣解決,其他2張海報我看到的是說,在說你支持任何密度等畫面尺度的方式,但是這不是做事的正確方法。您希望您的內容可以滾動,以免在小屏幕上出現非常小的無法讀取的文本,或者在大屏幕上出現巨大的不文本文本。無論您的內容顯示在哪個設備上,您都希望自己的內容在實際空間中具有相同的大小,這就是Android使用dp的原因。

編輯2:你可以設計你的屏幕分配百分比的屏幕不同的組件。你在Android中的做法是使用LinearLayout。線性佈局具有權重和屬性。如果將重量總和設置爲100,則可以將兒童權重設置爲您希望佔據屏幕的百分比。因此,如果您想在底部視圖中顯示20%的屏幕,則在垂直方向的LinearLayout中,將第一個視圖的權重設置爲80(佔屏幕的80%),將底部設置爲20.有意義?

+0

我正在使用sp和dip以及dp。這是一個瑣事遊戲,定時,所以我更喜歡用戶不必滾動 – Alexey

+0

@Alexey啊,你正在做一個遊戲。這是一個完全不同的故事。我強烈建議你看看另一個問題,我回答了一個有類似問題的人。我會推薦相同的建議。 http://stackoverflow.com/questions/17936574/compatibility-of-android-screens/17936893#17936893,但在你的情況,因爲你的遊戲是如此的文字沉重,它可能不是最好的。我會編輯我的答案給你另一條路線。 – spierce7

相關問題