gpt4 book ai didi

android - 将 LinearLayout 中的 View 内容居中

转载 作者:行者123 更新时间:2023-11-29 17:58:59 24 4
gpt4 key购买 nike

这是布局(下方)。我正在尝试重新定位复选框的位置;将其移动到 View 的右侧。 android:gravity 和 android:layout_gravity 似乎没有效果。有什么解释吗?此 LinearLayout 是相对布局的子项。

enter image description here

<LinearLayout
android:id="@+id/deviceLinear"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_below="@id/view1" >

<ImageView
android:contentDescription="@string/devices_icon"
android:id="@+id/devices_img"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="0.15"
android:layout_gravity="center"
android:src="@drawable/hardware_phone" />

<TextView
android:id="@+id/devices"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.43"
android:text="@string/devices"
android:textSize="20sp" />

<CheckBox
android:id="@+id/check_devices"
android:button="@drawable/custom_checkbox"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="0.42"
android:onClick="onCheckboxClicked" />

</LinearLayout>

最佳答案

我假设您希望 CheckBox 位于 LinearLayout 的右侧。因为你已经给了它一个 layout_weight 它总是会占据宽度的一些固定百分比,而不管它的大小,正如你可以通过那个蓝色边界框看到的那样。

尝试将复选框包装在另一个具有 android:orientation='horizo​​ntal'LinearLayout 中。为包装 LinearLayout 赋予 0.42 权重,然后将 LinearLayoutandroid:gravity 设置为 正确。在将复选框移动到最右侧时应该保持间距。

像这样:

<LinearLayout
android:orientation="horizontal"
android:layout_width="0dp"
android:layout_weight="0.42"
android:layout_height="wrap_content"
android:gravity="right" />

<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>

您可能还想考虑 RelativeLayout,它使您能够根据其他 View 的位置定位 View 。

关于android - 将 LinearLayout 中的 View 内容居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17330792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com