以下代码中的两个button
设置为wrap_content
且没有填充。但是,垂直方向仍有一些填充。如果我将android:layout_height
设置为固定参数,则填充可能会消失。但我确实想使用wrap_content
而不是固定的高度。
编辑: 现在,我必须使用DIP(不推荐使用)作为文本大小,以确保在DIP中使用固定高度时按钮中的文本。期待更好的解决方案!
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="5dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:layout_marginLeft="5dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/account_balance"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tvBa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:src="@drawable/video_list_price"/>
</LinearLayout>
</LinearLayout>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/record_selector"
android:gravity="center"
android:textColor="#ffffffff"
android:text="@string/charge_record"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:background="@drawable/charge_selector"
android:gravity="center"
android:textColor="#ffffffff"
android:text="@string/charge"/>
</LinearLayout>
答案 0 :(得分:0)
默认情况下,容器内容对齐顶部。
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:layout_marginLeft="5dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/account_balance"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/tvBa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:src="@drawable/video_list_price"/>
</LinearLayout>
</LinearLayout>
与Button相比,这个内容的高度更高。
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/record_selector"
android:gravity="center"
android:textColor="#ffffffff"
android:text="@string/charge_record"/>
所以实际上按钮现在没有填充,但由于你的根LinearLayout的第一项,它占用的空间更多。
在根LinearLayout中再添加一个属性。的机器人:重力= “center_vertical”强>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:orientation="horizontal"
android:gravity="center_vertical"
android:background="#756846">
答案 1 :(得分:0)
删除此行:
android:layout_weight="1.0"
并将0dp值更改为wrap_content
- EDITED
您有两个潜在的填充来源: 第一个是初始按钮背景尺寸 - 它不会按比例缩小,只有
第二个是按钮的默认样式 - 只需设置padding = 0dp