在Android中运行后的置换按钮

时间:2014-01-14 20:47:55

标签: android android-layout android-xml

我用一些按钮开发一个xml,它在xml视图https://www.dropbox.com/s/ao893440404e2gk/Untitled-1.png和模拟器中精细显示但在我的设备中使用Displacement按钮(galaxy fit android2.3.6)https://www.dropbox.com/s/ux5st3x51q10p21/Untitled-2.png
我该怎么办?
这是我的xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/back1"
android:gravity="clip_vertical"
tools:context=".Main" >

<ImageButton
    android:id="@+id/imageButton2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/imageButton1"
    android:layout_below="@+id/imageButton1"
    android:background="@null"
    android:paddingBottom="5dp"
    android:src="@drawable/btnmain2" />

<ImageButton
    android:id="@+id/imageButton3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/imageButton2"
    android:layout_below="@+id/imageButton2"
    android:background="@null"
    android:paddingBottom="5dp"
    android:src="@drawable/btnmain3" />

<ImageButton
    android:id="@+id/imageButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="126dp"
    android:background="@null"
    android:paddingBottom="5dp"
    android:src="@drawable/btnmain1" />

<ImageButton
    android:id="@+id/imageButton4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/imageButton3"
    android:layout_below="@+id/imageButton3"
    android:background="@null"
    android:src="@drawable/btnmain4" />

2 个答案:

答案 0 :(得分:0)

它看起来像你设计的那样完全正常。问题来自button1,您可以在其中指定倾角android:layout_marginTop="126dp"中的上边距而不是垂直居中。一个更好的解决方案是创建一个空的0高度View(或类似的基本元素),使用垂直居中,然后将其他按钮作为基础。例如:

你有:

+----------------+
|                |
|    (button)    |
|    (button)    |
|    (button)    |
|    (button)    |
|                |
+----------------+

我的意思是:

+----------------+
|                |
|    (button)    |
|    (button)    |
|     (View)     |
|    (button)    |
|    (button)    |
|                |
+----------------+

答案 1 :(得分:0)

也许我误解了你,但如果你的目标是将所有按钮放在中心位置(与屏幕分辨率无关):

<RelativeLayout 
  android:layout_width="match_parent"
  android:layout_height="match_parent">
    <LinearLayout 
      android:layout_centerInParent="true"
      android:orientation="vertical"
      android:layout_height="wrap_content"
      android:layout_width="wrap_content">
          <Button/>
          <Button/>
          <Button/>
          <Button/>
    </LinearLayout>
</RelativeLayout>

这样您的所有按钮都会与包含RelativeLayout

LinearLayout的中心对齐

我希望它有所帮助!