2012-07-10 37 views
1

我想優化我的應用程序的所有屏幕尺寸。現在我想知道如果我真的必須把它放到一個apk中。 這些都是屏幕尺寸,我想支持:爲所有屏幕提供圖像?

小320x480 400x800 400x852 540x960 720x1280

我認爲有一些具有240×320的分辨率如此之少的設備,這一努力將高支持他們太。所以我的問題是,我是否必須在每個密度文件夾中放置所有圖像?

另一個問題:我想從2.1開始提供我的應用程序,但2.1不支持xhdpi屏幕,例如720x1280,2.1分別無法與這些大圖片相處。

回答

0

您需要爲不同屏幕尺寸的手機不同的文件夾,如MDP,自民黨,HDP,

檢查Android的官方documention

感謝。

1

解釋如何優雅地處理多個乾粉吸入:http://developer.android.com/training/basics/supporting-devices/screens.html

從本質上講,你會爲每個DPI不同的目錄:

MyProject/ 
    res/ 
     drawable-xhdpi/ 
      awesomeimage.png 
     drawable-hdpi/ 
      awesomeimage.png 
     drawable-mdpi/ 
      awesomeimage.png 
     drawable-ldpi/ 
      awesomeimage.png 

如果不是由API(xhpdi在你的榜樣支持)或者如果你沒有圖像,那麼它應該默認爲基本的/drawable/文件夾下的/res/

1

我會聲明從android開發策略的另一個解決方案,我是 很喜歡。

另一種方法是先從屏幕尺寸最大的設備開始,然後縮小比例並找出需要在較小屏幕上製作的UI折衷方案。

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

因此,創建與設計的最大密度圖像一個drawable文件夾。目前10英寸平板電腦並縮小它。

優點:不需要有設計技巧來創建一些漂亮的圖像,並且您的應用程序(可能)尺寸較小。

缺點:多一點編碼爲了縮小它,並在每個圖像的DPS更小心。

編輯評論:

是的。我會爲您提供我正在做的事情的快速概覽。

1)首先創建一個drawable文件夾,不需要再創建一個(雖然總是有例外)。 2)正如我所提到的,所有的圖像應該按照您想要支持的屏幕(可能是10英寸超高密度平板電腦)以最高分辨率顯示。 3)這是一個棘手的部分,我傾向於創建所有可繪製的X * X尺寸或2X * X尺寸(4X * X,8X * X ...),以便比例儘可能精確(除以2)。

然後,在代碼中。假設我們有72x72像素的圖像,我們想爲我們的應用程序製作一個小導航圖標。這對於10英寸平板電腦來說大致是正確的,但對於3.2英寸手機來說非常大。所以,我在這樣的佈局創建的ImageView:

<ImageView 
     android:id="@+id/previousPage" 
     android:layout_width="@dimen/small_icon" 
     android:layout_height="@dimen/small_icon" 
     android:src="@drawable/prev" 
     android:layout_marginRight="10dp" /> //...etc 

正如你可以看到我使用特定的寬度和高度,不換內容,所以這樣的圖像具有最高72x72像素的30dp*30dp的ImageView有一個完美的解決方案。對於開發者來說,這是我做不那麼華麗的方式,「設計師的事情」。

如果你想要每個版本或類似的東西不同的尺寸,你也可以創建不同的values文件夾。

+0

您只爲所有分辨率提供一個圖像,並且縮小圖像的質量正常嗎? – Gingerbread123321 2012-07-10 18:51:58

+0

我已更新我的評論並提供了完整的概述細節。 – 10s 2012-07-10 21:43:03

+0

確認?討論? – 10s 2012-07-24 23:52:43

相關問題