如何在CheckedtextView中对齐右侧的复选框

How to align check box on the right side in CheckedtextView

我有一个 XML 布局,我想让 CheckBox 对齐到右侧。
只有 CheckBox 应该在右侧而不是文本。

我该怎么做?

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">


        <CheckedTextView
             android:id="@+id/text1"
        android:layout_width="fill_parent"
        android:layout_height="?android:attr/listPreferredItemHeightSmall"
        android:textAppearance="?android:attr/textAppearanceListItemSmall"
        android:gravity="center_vertical"
        android:checkMark="?android:attr/listChoiceIndicatorMultiple"
        android:paddingLeft="?android:attr/listPreferredItemPaddingLeft"
        android:paddingRight="?android:attr/listPreferredItemPaddingRight"/>
</LinearLayout>

您应该在 CheckedTextView 元素中尝试 android:gravity="center_vertical|right"

替换此行:

android:gravity="center_vertical"

android:gravity="center_vertical|right"

更改为:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout     xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="right"
    android:orientation="horizontal">


    <CheckedTextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="?android:attr/listPreferredItemHeightSmall"
        android:textAppearance="?android:attr/textAppearanceListItemSmall"
        android:gravity="center_vertical"
        android:checkMark="?android:attr/listChoiceIndicatorMultiple"
        android:paddingLeft="?android:attr/listPreferredItemPaddingLeft"
        android:paddingRight="?android:attr/listPreferredItemPaddingRight"/>
</LinearLayout>

根据我的经验,这会导致各种设备出现问题:/我现在为此使用了两种视图,一种是定制的 ImageView,它具有内部检查状态,可在单击图像时发生变化并且也有吸气剂和吸气剂。另一个视图是一个简单的TextView。现在我将它们都放入 RelativeLayout 并在 ImageView 上设置 alignParentRight 并告诉 TextView 在图像的右侧并填充父级的宽度并且也在 a垂直居中。

在此之前,我在 CheckBox

上使用 drawableRight="@drawable/..."

以下代码对我有用

 <CheckedTextView
    android:id="@+id/checkedTextView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:textColor="#000000,"
    android:layout_marginTop="48dp"
    android:checkMark="?android:attr/listChoiceIndicatorMultiple"
    android:checked="true"
    android:text="CheckedTextView" />