我读过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使用。
答案 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>