TableRow中的Android按钮大小

时间:2013-08-26 12:18:25

标签: android button layout

我读过Andorid Metrics and Grids(http://developer.android.com/design/style/metrics-grids.html),现在我试图让我的布局看起来不错。 我的TableRow有两个元素TextEdit和button。

<TableRow android:id="@+id/tableRow2" android:layout_width="match_parent" android:layout_height="match_parent">
<EditText
    android:id="@+id/personDOB"
    android:hint="Date of birth"
    android:inputType="date" />

<ImageButton
    android:id="@+id/openCalendar"
    android:layout_width="48dp"
    android:layout_height="wrap_content"
    android:background="@drawable/mybutton_background"
    android:contentDescription="@string/selectdate"
    android:cropToPadding="true"
    android:onClick="selectDate"
    android:src="@drawable/ic_datepicker"/>
</TableRow>

我的按钮是32x32(所以我可以为48dp rhytm添加每边8dp的边距)但是在TableRow中它的宽度是3倍。 我尝试制作按钮layout_width = 48dp(如上所述),包装内容,用width = 0px&amp;进行一些实验。重量但这一切都无济于事。 我需要按钮来固定大小,所有其他行空间必须由EditText使用。

1 个答案:

答案 0 :(得分:1)

用您的布局替换以下布局。

<TableRow
    android:id="@+id/tableRow2"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <EditText
        android:id="@+id/personDOB"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:hint="Date of birth"
        android:inputType="date" />

    <ImageButton
        android:id="@+id/openCalendar"
        android:layout_width="48dp"
        android:layout_height="wrap_content"
        android:background="@drawable/mybutton_background"
        android:contentDescription="@string/selectdate"
        android:adjustViewBounds="true"
        android:cropToPadding="true"
        android:onClick="selectDate"
        android:scaleType="centerInside"
        android:src="@drawable/ic_datepicker" />
</TableRow>