我的图片按钮高度为40像素,但我的画廊高度要大很多。现在,我的图像按钮占据了它们给定的整个空间,并且与我的画廊的高度相同。是否仍然保持按钮的原始尺寸,同时保持这种水平布局?
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal"
android:paddingTop="20dp" >
<ImageButton
android:id="@+id/left_arrow"
android:layout_weight="3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/shared_arrow_left_button_selector"
android:scaleType="fitCenter" />
<Gallery
android:id="@+id/gallery"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:spacing="15dp" />
<ImageButton
android:id="@+id/right_arrow"
android:layout_weight="3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/shared_arrow_right_button_selector"
android:scaleType="fitCenter" />
</LinearLayout>
答案 0 :(得分:0)
在ImageButtons中删除布局权重= 3,这是显示图像按钮大于图库的原因。
我认为您不知道如何使用layout_weight属性,因此您不知道如何解决此问题。首先要了解layout_weight。
如果您有任何疑问,请随时问我。
在图像按钮和图库中使用以下线条,这将很不错。
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
答案 1 :(得分:0)
<ImageButton
android:id="@+id/left_arrow"
android:layout_weight="3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/shared_arrow_left_button_selector"
android:scaleType="centerinside" />
Remove Weight attribute, and set width and height of buttons to wrap_content
<Gallery
android:id="@+id/gallery"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:spacing="15dp" />
<ImageButton
android:id="@+id/right_arrow"
android:layout_weight="3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/shared_arrow_right_button_selector"
android:scaleType="centerinside" />
</LinearLayout>
答案 2 :(得分:0)
您正在申请
android:layout_width="match_parent"
android:layout_height="match_parent"
如果你只想让ImageButtons包装原始大小,只需将它们更改为wrap_content
并删除layout_weight
属性,它们就会填充高度。此外,当您将layout_weight="1"
应用于图库时,只需更改android:layout_width="0dp"
,因为宽度将由layout_weight
属性本身管理。你的最终布局应该是,
<?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:gravity="center"
android:orientation="horizontal"
android:paddingTop="20dp" >
<ImageButton
android:id="@+id/left_arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitCenter" />
<Gallery
android:id="@+id/gallery"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:focusable="true"
android:focusableInTouchMode="true"
android:spacing="15dp" />
<ImageButton
android:id="@+id/right_arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitCenter" />
</LinearLayout>