2011-11-24 38 views
0

我正在xml android中設計一個應用程序。我一直在使用大量可繪製的資源。事情是,當我在800x800大小的模擬器中測試設計時,它運行良好。但是當我將模擬器的尺寸減小到500x500時,設計開始爆發。它不完全在同一個位置。我使用了很多layout_margin屬性。請告訴我是否有任何其他方式可以使我的設計運行良好,而不考慮模擬器的大小!?android xml設計構建

我的代碼剪斷是:

<ImageView android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/containers" 
      android:src="@drawable/containers" 
      android:paddingTop="42px" 
      android:paddingLeft="3px"> 
</ImageView> 
<TextView android:textColor="#000000" 
      android:paddingLeft="20px" 
      android:paddingTop="58px" 
      android:layout_width="wrap_content" 
      android:id="@+id/current_loc" 
      android:text="@string/current_loc" 
      android:layout_height="wrap_content"> 
</TextView> 
<TextView android:textColor="#000000" 
      android:paddingLeft="20px" 
      android:paddingTop="109px" 
      android:layout_width="wrap_content" 
      android:id="@+id/current_loc" 
      android:text="@string/at" 
      android:layout_height="wrap_content"> 
</TextView> 
<Button android:text="@string/time" 
     android:textColor="#000000" 
     android:id="@+id/pickTime" 
     android:layout_height="50px" 
     android:layout_width="120px" 
     android:layout_marginTop="100px" 
     android:layout_marginLeft="40px"> 
</Button> 
<Button android:text="@string/date" 
     android:textColor="#000000" 
     android:id="@+id/pickDate" 
     android:layout_height="50px" 
     android:layout_marginTop="100px" 
     android:layout_marginLeft="160px" 
     android:layout_width="100px"> 
</Button> 
<TextView android:textColor="#000000" 
      android:layout_marginLeft="260px" 
      android:id="@+id/to" 
      android:layout_marginTop="110px" 
      android:layout_width="wrap_content" 
      android:text="@string/to" 
      android:layout_height="wrap_content"> 
</TextView> 
<EditText android:textColor="#000000" 
      android:id="@+id/editText2" 
      android:layout_marginTop="97px" 
      android:layout_marginLeft="280px" 
      android:layout_height="60px" 
      android:layout_width="190px" 
      android:hint="@string/dest" 
      android:textSize="20px" 
      android:singleLine="True"> 
</EditText> 
<TextView android:textColor="#000000" 
      android:paddingLeft="20px" 
      android:id="@+id/thereare" 
      android:paddingTop="180px" 
      android:layout_width="wrap_content" 
      android:text="@string/ihave" 
      android:layout_height="wrap_content"> 
</TextView> 
<EditText android:textColor="#000000" 
      android:id="@+id/num1" 
      android:layout_marginTop="169px" 
      android:layout_height="55px" 
      android:layout_width="50px" 
      android:layout_marginLeft="85px" 
      android:hint="2"></EditText> 
<TextView android:textColor="#000000" 
      android:paddingLeft="140px" 
      android:id="@+id/female" 
      android:paddingTop="180px" 
      android:layout_width="wrap_content" 
      android:text="@string/female" 
      android:layout_height="wrap_content"> 
</TextView> 
<TextView android:textColor="#000000" 
      android:paddingLeft="210px" 
      android:id="@+id/and" 
      android:paddingTop="180px" 
      android:layout_width="wrap_content" 
      android:text="@string/and" 
      android:layout_height="wrap_content"> 
</TextView> 

回答

2

您應該嘗試擺脫指定的像素大小。相反,你可以使用DIP和layout_weights

+0

好的..謝謝..我會嘗試這個儀式現在 – Chandeep

1

您可以爲不同的屏幕分辨率指定不同的佈局.xml文件,以避免您的問題。仔細閱讀Android開發人員網站提供的指導原則here

3

爲了使XML設計正常運行的任何屏幕設備上,周圍環繞RelativeLayout你的widget和單位改成你pxdp。使用dp單位,您將獲得相對測量值,其變化取決於屏幕分辨率。

欲瞭解更多信息,請參閱此鏈接http://developer.android.com/guide/practices/screens_support.html

+0

非常感謝..!我只是想試試 – Chandeep

+0

你到底需要什麼?我可以爲你做什麼 –

1

現在嘗試使用此代碼可能會有所幫助的ü

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

寫下你的XML在betweenthis代碼

</LinearLayout>