简单 Android 布局调整大小
Simple Android Layout Resize
我正在尝试调整旋转按钮的大小以按比例展开。现在,它们的长度是固定的,但我不确定是否有其他方法可以让按钮调整大小(设置重量似乎没有帮助)。我希望按钮在垂直和水平方向上基本上填满屏幕的长度。如果您需要更多信息,请告诉我。
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_gravity="center_vertical" >
<Button
android:id="@+id/mainCommentBtn"
android:layout_width="119dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:text="@string/commentBtn" />
<Button
android:id="@+id/mainProfileBtn"
android:layout_width="119dp"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:layout_centerInParent="true"
android:text="@string/profileBtn" />
<Button
android:id="@+id/mainDetailBtn"
android:layout_width="119dp"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="@string/shareBtn" />
</LinearLayout>
用这个替换你的资源。复制编辑的更改
注意宽度是 0dp,因为它们使用了粗细。
使用重量:
1. 为了使用权重,您需要在父项中设置 weightSum。
2. 确保根据您使用权重的方式将宽度或高度设置为 0。
(例如,因为我们要使用水平方向,所以我们想使用“0dp”宽度。这允许权重控制对象的宽度。
3.最后确保所有物体的重量加起来等于weightSum。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="5dp"
android:orientation="horizontal"
android:weightSum="3" >
<Button
android:id="@+id/mainCommentBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/commentBtn" />
<Button
android:id="@+id/mainProfileBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/profileBtn" />
<Button
android:id="@+id/mainDetailBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/shareBtn" />
</LinearLayout>
您需要为 LinearLayout
指定方向。
我猜你想使用 android:orientation="horizontal"
。
然后,为了使 android:weight
起作用,您需要通过对每个按钮使用 android:layout_width="0px"
将每个按钮的宽度指定为 0px
。
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="Button" />
这些 xml 属性调整按钮的大小以在垂直和水平方向上填充屏幕。
您可以借助布局权重创建布局,使其在横向模式下自动填充屏幕,如下所示:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="3" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 1"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 2"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 3"
android:layout_weight="1" />
</LinearLayout>
我正在尝试调整旋转按钮的大小以按比例展开。现在,它们的长度是固定的,但我不确定是否有其他方法可以让按钮调整大小(设置重量似乎没有帮助)。我希望按钮在垂直和水平方向上基本上填满屏幕的长度。如果您需要更多信息,请告诉我。
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_gravity="center_vertical" >
<Button
android:id="@+id/mainCommentBtn"
android:layout_width="119dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:text="@string/commentBtn" />
<Button
android:id="@+id/mainProfileBtn"
android:layout_width="119dp"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:layout_centerInParent="true"
android:text="@string/profileBtn" />
<Button
android:id="@+id/mainDetailBtn"
android:layout_width="119dp"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="@string/shareBtn" />
</LinearLayout>
用这个替换你的资源。复制编辑的更改
注意宽度是 0dp,因为它们使用了粗细。 使用重量: 1. 为了使用权重,您需要在父项中设置 weightSum。 2. 确保根据您使用权重的方式将宽度或高度设置为 0。 (例如,因为我们要使用水平方向,所以我们想使用“0dp”宽度。这允许权重控制对象的宽度。 3.最后确保所有物体的重量加起来等于weightSum。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="5dp"
android:orientation="horizontal"
android:weightSum="3" >
<Button
android:id="@+id/mainCommentBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/commentBtn" />
<Button
android:id="@+id/mainProfileBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/profileBtn" />
<Button
android:id="@+id/mainDetailBtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_weight="1"
android:clickable="true"
android:focusable="false"
android:focusableInTouchMode="false"
android:text="@string/shareBtn" />
</LinearLayout>
您需要为 LinearLayout
指定方向。
我猜你想使用 android:orientation="horizontal"
。
然后,为了使 android:weight
起作用,您需要通过对每个按钮使用 android:layout_width="0px"
将每个按钮的宽度指定为 0px
。
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="Button" />
这些 xml 属性调整按钮的大小以在垂直和水平方向上填充屏幕。
您可以借助布局权重创建布局,使其在横向模式下自动填充屏幕,如下所示:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="3" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 1"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 2"
android:layout_weight="1" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 3"
android:layout_weight="1" />
</LinearLayout>