2012-04-10 82 views
0

所以我的問題很簡單 - 我想使用XML佈局來精確控制多個設備上的小部件的位置。爲此,我徹底閱讀了支持多種設備的google docs。根據this部分,WVGA854和HVGA都被視爲「正常屏幕」大小。所以從理論上講,在WVGA854上定位一個小部件看起來應該與HVGA相同。但是,由此產生的截圖顯示,否則。 enter image description hereAndroid定位問題

小部件在WVGA854皮膚上顯得相對較高。 XML代碼如下所示,並且佈局正常/文件夾下放置:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <ImageButton 
     android:id="@+id/button1" 
     android:src="@drawable/icon_unlock" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="300dp" 
     android:text="Button" /> 

</RelativeLayout> 

我構造的可繪製在適當的比(3:4:6:8作爲recommended)。那麼爲什麼這種定位不匹配發生?我開始認爲使用XML來定位事物是毫無結果的。我的應用需要非常精確的小部件定位,所以即使這種輕微的不匹配也是一個問題。任何幫助我如何補救這一點?

編輯: 我想是用於向被放置在一個方式的微件,使得餘量的從頂部至底部從邊緣的比率是完全一樣的跨設備。從屏幕截圖中可以看出,WQVGA854和HVGA的這個比例並不相同。

+1

你的圖像的實際位置是什麼,意味着你想把圖像放在哪裏 – Abhi 2012-04-10 11:48:19

回答

0

「正常屏幕」尺寸並不意味着屏幕具有完全相同的傾角數量。您需要將其視爲包含大量不同屏幕大小的存儲桶,這些大小在物理大小上都是相似的。

因此使用固定大小的邊距和填充不(很容易)會達到您需要的效果。所以請澄清你的問題,並舉例說明你真正想要達到的目標。