2014-02-21 134 views
0

我創建了可以在多種屏幕尺寸上運行的應用程序。我的應用程序運行在普通,大型和X大屏幕尺寸上,但我的應用程序無法在小型手機上使用。它的用戶界面不能在小型手機上完整顯示。請告訴我任何解決方案。Android應用程序支持多種屏幕尺寸

<supports-screens 
        android:smallScreens="true" 
        android:normalScreens="true" 
        android:largeScreens="true" 
        android:xlargeScreens="true" 
        android:anyDensity="true" 
        android:largestWidthLimitDp="720" 
        android:compatibleWidthLimitDp="720" /> 
+0

明確你的問題。您的應用程序是否在小屏幕上運行?如果它不顯示完整的用戶界面,這意味着你必須修復你的用戶界面。更改您的活動佈局文件,使其在小屏幕上看起來很好。 – Sharj

回答

0

。利用在明顯低於標籤的濾除小電話:

<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"/> 

其中:

android:smallScreens="false" 

欲瞭解更多信息:

http://developer.android.com/guide/topics/manifest/supports-screens-element.html

其他WA你是否可以在你的代碼中進行檢查。

在啓動應用程序時,檢查屏幕尺寸,如果屏幕尺寸小於所需尺寸,則顯示消息並退出應用程序。

前一種方法將過濾谷歌播放中的應用程序,但後者將是一個很好的選擇,我認爲儘管我沒有找到任何人使用這種方法(如果用戶試圖離線安裝應用程序,意味着不從谷歌播放)。

0
DisplayMetrics metrics = getResources().getDisplayMetrics(); 
      Toast.makeText(getApplicationContext(), "density-"+metrics.density,Toast.LENGTH_SHORT).show(); 
      if(metrics.density==1.5) 
       tv.setTextSize(size); 
      else if(metrics.density==2.0) 
        tv.setTextSize(size); 
      else if(metrics.density==3.0) 
        tv.setTextSize(size); 

有了這個,你可以找到那麼你的小裝置是根據它什麼密度可以設置大小爲您的TextView

0

指定「Android的smallscreens =‘真’」將使其可用於小屏幕。它不會完全幫助你解決你的問題。爲了讓您的應用可用於各種設備,以下是從android開發人員資源中獲取的要點。

  • 爲不同的屏幕尺寸提供不同的佈局。您可以使用提供特定尺寸資源的配置限定符爲small,normal,large和xlarge。

  • 針對不同屏幕密度

  • 提供不同的位圖資源不給硬編碼的像素值

  • 嘗試使用相對佈局,而不是絕對的。

結賬this

0

您可以使用不同的佈局文件夾小屏幕

例如爲240x320的屏幕,你可以採取單獨的文件夾內的資源名稱

layout-320x240 

,並把同一個XML文件夾內。