如何删除Android中的button周围的填充?
在我的Android应用程序中,我有这样的布局:
<?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <fragment android:id="@+id/map" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" class="com.google.android.gms.maps.SupportMapFragment"/> <Button android:id="@+id/button_back" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="CloseActivity" android:padding="0dp" android:text="@+string/back" /> </LinearLayout>
在预览和电话中,它看起来像:
正如你可以看到在底部区域的button,那里有一些填充。
我怎样才能摆脱这一点,并让button完全填充底部区域?
对我来说,这个问题原来是一些Android主题上的minHeight和minWidth。
在Button元素上,添加:
<Button android:minHeight="0dp" android:minWidth="0dp" ...
或者在你的button样式中:
<item name="android:minHeight">0dp</item> <item name="android:minWidth">0dp</item>
这不是填充,它是背景中button的阴影可绘制的。 创build自己的背景,它会消失。
一个解决方法可能是尝试使用-ve
值的边缘如下所示:
<Button android:id="@+id/button_back" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="CloseActivity" android:padding="0dp" android:layout_marginLeft="-5dip" android:layout_marginRight="-5dip" android:layout_marginTop="-5dip" android:layout_marginBottom="-5dip" android:text="@string/back" />
这将使这个空间消失。 我的意思是你可以select适当的dip
值,这使得它消失。 它为我工作。 希望对你有效。
我是新来的机器人,但我有类似的情况。 我做了@Delyanbuild议的内容,并在xml布局文件中使用了android:background =“@ null”。
在button的XML设置android:includeFontPadding="false"
我有同样的问题,似乎是因为button的背景颜色 。 尝试改变背景颜色为另一种颜色,例如:
android:background="@color/colorActive"
看看它是否有效。 然后,您可以定义一个样式,如果你想button使用。
它为我工作。
干杯
为了消除切换button的填充,我们需要设置minWidth和minHeight 0dp。 android:minWidth="0dp" android:minHeight="0dp"
<ToggleButton android:id="@+id/toggle_row_notifications" android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="0dp" android:minHeight="0dp" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:padding="@dimen/_5sdp" android:textOn="" android:textOff="" android:background="@android:color/transparent" android:button="@drawable/toggle_selector" />
设置您的可绘制文件的button属性,如: android:button="@drawable/toggle_selector"
以下是我的toggle_selecter.xml
文件
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/notifications_toggle_on" android:state_checked="true"/> <item android:drawable="@drawable/notifications_toggle_off" android:state_checked="false"/> </selector>
它似乎不是填充,边距,或minheight /宽度。 设置android:background="@null"
该button失去了触摸animation,但事实certificate,将背景设置为任何东西都可以修复该边框。
我目前正在与:
minSdkVersion 19 targetSdkVersion 23