0

我有这种情况:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
android:layout_width="fill_parent"  
android:layout_height="fill_parent"  
>  



<ImageButton android:id="@+id/btn1"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_marginLeft="50px"
    android:layout_marginTop="50px"
    android:clickable="true"  
    android:tag="1"  
    android:background="@drawable/xo" 
/>  



<ImageButton android:id="@+id/btn2"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_marginLeft="120px"
    android:layout_marginTop="50px" 
    android:clickable="true"  
    android:tag="2"  
    android:background="@drawable/xo" 
/>  

<ImageButton android:id="@+id/btn3"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_marginLeft="190px"
    android:layout_marginTop="50px"   
    android:clickable="true"  
    android:tag="3"  
    android:background="@drawable/xo" 
/>  
</RelativeLayout>

我可以使用百分比而不是 50px 吗?如果是,语法如何?我有这 3 个按钮,并希望显示在页面中间。我想一个接一个,水平对齐。

4

3 回答 3

0

不知道百分比我还没有遇到过百分比。android 中还使用了其他测量值。我希望您使用 dp 或 sp 并且在非常必要之前不要使用像素。这是不同尺度之间差异的链接。

Android上的“px”、“dp”、“dip”和“sp”有什么区别?

于 2012-10-22T20:16:03.507 回答
0

我不知道是否允许百分比,但我知道由于屏幕分辨率和密度不同,通常不赞成 px/pixels。

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension描述了可能对您有用的 dp(与密度无关的像素)。虽然不能帮助你百分比部分。

于 2012-10-22T20:13:03.250 回答
0

您需要android:layout_centerVertical="true"layout_marginTop 的 ,而不是百分比。

我为此修改了您的xml。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
>  
<ImageButton android:id="@+id/btn1"  
    android:layout_width="60dp"   
    android:layout_height="80dp"  
    android:layout_marginLeft="50dp"
    android:layout_centerVertical="true"
    android:clickable="true"  
    android:tag="1"  
    android:background="@android:color/darker_gray" 
/>  
<ImageButton android:id="@+id/btn2"  
    android:layout_width="60dp"   
    android:layout_height="80dp"
    android:layout_toRightOf="@+id/btn1"
    android:layout_alignTop="@+id/btn1"
    android:layout_marginLeft="10dp" 
    android:clickable="true"  
    android:tag="2"  
    android:background="@android:color/darker_gray" 
/>  
<ImageButton android:id="@+id/btn3"  
    android:layout_width="60dp"   
    android:layout_height="80dp"
    android:layout_toRightOf="@+id/btn2"
    android:layout_alignTop="@+id/btn2"
    android:layout_marginLeft="10dp"  
    android:clickable="true"  
    android:tag="3"  
    android:background="@android:color/darker_gray" 
/>  
</RelativeLayout>

与您的左侧 btn1 对齐。

如果您希望您的 btn2 位于中心,请使用android:layout_centerInParent="true".

并让 btn1 和 btn3 对齐它。

于 2012-10-23T00:33:40.857 回答