我尝试使用LinearLayout将3个按钮放在一行中。 左侧按钮(固定尺寸)应与屏幕左侧部分对齐,右侧按钮(固定尺寸)对齐。中间按钮的大小应该是可变的,应该填补剩余的空间。下面所述代码的结果是,右键按钮超出界限且不可见。任何人都可以帮我解决这个问题吗?
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="horizontal"
android:weightSum="1.0">
<Button
android:id="@id/LeftButton"
android:layout_width="50dp"
android:layout_height="50dp"
android:elevation="9dp"
android:focusable="true"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"
android:layout_weight="0.2"/>
<Button
android:id="@id/MiddleButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="15dp"
android:paddingTop="18dp"
android:layout_weight="0.6"/>
<Button
android:id="@id/RightButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.2"/>
</LinearLayout>
答案 0 :(得分:0)
您应该将中间按钮宽度更改为0dp,这将缩放它以适合缺少的部分。
您可以将布局更改为:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="horizontal">
<Button
android:id="@id/LeftButton"
android:layout_width="50dp"
android:layout_height="50dp"
android:elevation="9dp"
android:focusable="true"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"/>
<Button
android:id="@id/MiddleButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingLeft="15dp"
android:paddingTop="18dp"
android:layout_weight="1"/>
<Button
android:id="@id/RightButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
答案 1 :(得分:0)
使用此功能,它可以满足您的需求。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="horizontal"
android:weightSum="1.0">
<Button
android:id="@+id/LeftButton"
android:layout_width="0dp"
android:layout_height="50dp"
android:elevation="9dp"
android:focusable="true"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"
android:layout_weight="0.2"/>
<Button
android:id="@+id/MiddleButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingLeft="15dp"
android:paddingTop="18dp"
android:layout_weight="0.6"/>
<Button
android:id="@+id/RightButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"/>
</LinearLayout>
答案 2 :(得分:0)