2012-02-15 91 views
1

我是初學者,爲android編程。首先我需要我的應用程序將支持2設備手機(480x800)和平板電腦(1280x800)。支持多屏(手機和平板電腦)

我讀了這個,並試圖一步一步做。 Supporting Multiple Screens

所以我創建的文件夾與佈局:

res/layout/firstPage.xml//this is by default phone layout port and land 
res/layout-sw720dp/firstPage.xml//this is tablet port layout 
res/layout-sw720dp-land/firstPage.xml//this is tablet land layout 

我的XML看起來是這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_gravity="center_vertical" 
    android:baselineAligned="false" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <Button 
     android:id="@+id/button1" 
     android:text="@string/button1" /> 

    <Button 
     android:id="@+id/button2" 
     android:text="@string/button2" /> 

    <Button 
     android:id="@+id/button3" 
     android:text="@string/button3" /> 

</LinearLayout> 

我不給有關按鈕的詳細信息,因爲在每一個佈局,他們是不同的。

在我的AndroidManifest.xml我有這樣一行:

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

也許我並不需要爲他人真如果我設置TRU這個anyDensity =「真」

因此,我認爲我做了一切,因爲我應該。但是當我想在平板電腦上測試時,它會默認顯示我的電話佈局。 那麼我錯過了什麼? 或者我還需要做一些編碼?

編輯:

我想我明白爲什麼... 從Android 3.2(API等級13)開始,上述尺寸組已被取消,您應改用SWDP設定限定詞來定義的最小可用寬度您的佈局資源所需。

我的表是3.1,所以它沒有找到佈局? 但如果我想要支持從2.1到4,該怎麼辦?

+0

您給佈局按鈕的layout_height和layout_width佈局的值是多少? – 2012-02-15 12:45:51

回答

2

Sollution:

你應該必須遵循:Best Practise

嘗試使用不同的佈局不同的屏幕尺寸:

像這樣:

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 

不過如果不能解決那麼你的問題,請使用固定大小的圖像分別爲不同的佈局。

根據我的觀點和文件,它自我解釋說,你應該遵循一定的步驟來做到這一點。

希望它能幫助你。nd如果沒有,那麼讓我知道你在停止佈局管理的地方。

謝謝。

1

嘗試使用此...

res/layout/firstPage.xml//this is by default phone layout port and land 
res/layout-xlarge/firstPage.xml//this is tablet port layout 
res/layout-xlarge-land/firstPage.xml//this is tablet land layout 
+0

這是什麼比: '超大屏幕,風景方向'是不是任何設備/區域設置組合的最佳匹配。 以'Locale Language ___Region __,sw800dp,w1280dp,h800dp,超大屏幕,長寬比,風景方向,正常,白天時間,中等密度,手指觸摸屏,軟鍵盤,無鍵盤,暴露導航,沒有導航,屏幕分辨率1280x800,API級別7',這是兼容的,但實際上會顯示另一個更具體的佈局版本。 – Streetboy 2012-02-15 09:52:45

相關問題