按钮下面有这个额外的空间,我不知道为什么会这样。我尝试了一切,寻找任何遇到过这种问题的人,遗憾的是我一无所获。它要么我想要移除额外的空间和/或将它降低完全对齐。
这是我的xml文件
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/button_layout"
android:layout_alignParentTop="true"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#262626"
android:gravity="center">
<Button
android:id="@+id/receipts_button"
android:background="@android:color/transparent"
android:drawableTop="@drawable/preview_save_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<Button android:id="@+id/capture_button"
android:background="@android:color/transparent"
android:drawableTop="@drawable/preview_upload_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<Button android:id="@+id/settings_button"
android:background="@android:color/transparent"
android:drawableTop="@drawable/preview_discard_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
答案 0 :(得分:1)
您是否有使用按钮而不是ImageView的原因?您正在使用android:drawableTop
将图片放在顶部,并在底部留出一些空间用于文字!
由于您不想要文本,我更容易用ImageView
替换它并将图像设置为源。所以它将集中在视图上:
<LinearLayout
android:id="@+id/button_layout"
android:layout_alignParentTop="true"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#262626"
android:gravity="center">
<ImageView
android:id="@+id/receipts_button"
android:background="@android:color/transparent"
android:src="@drawable/ic_launcher"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView android:id="@+id/capture_button"
android:background="@android:color/transparent"
android:src="@drawable/ic_launcher"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView android:id="@+id/settings_button"
android:background="@android:color/transparent"
android:src="@drawable/ic_launcher"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
答案 1 :(得分:0)
试试这个, 实际上当你设置android:gravity =“center”时它属于布局本身,当你说layout_gravity时,这将适用于布局的孩子。
android:layout_gravity="center_vertical"
答案 2 :(得分:0)
首先,拥有许多嵌套布局不是一个好习惯。在您的情况下,您可以删除LinearLayout或RelativeLayout。除此之外,尽管发布整个xml会很有帮助,
我建议删除LinearLayout中的android:layout_alignParentTop="true"
,并可能添加以下内容:android:layout_gravity="bottom"
答案 3 :(得分:0)
android:drawableTop
属性并提供Button
图片
android:background
属性。 android:drawableTop
会将您的图片置于顶部。将layout_gravity
属性设置为center_vertical
按钮
<LinearLayout
android:id="@+id/button_layout"
android:layout_alignParentTop="true"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#262626"
android:gravity="center">
<Button
android:id="@+id/receipts_button"
android:background="@drawable/preview_save_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"/>
<Button android:id="@+id/capture_button"
android:background="@drawable/preview_upload_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"/>
<Button android:id="@+id/settings_button"
android:background="@drawable/preview_discard_icon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"/>
</LinearLayout>
答案 4 :(得分:0)
gameower 正确告知了这一点。
除此之外,如果您想继续使用Buttons
,则只需将android:drawableTop
替换为android:drawableLeft
即可获得所需内容。
希望肝脏。