Comment montrer android case à droite?

par défaut montre la case à cocher android texte à droite et case à cocher à gauche

Je veux montrer case à droite avec le texte à gauche

comment y parvenir?

105
demandé sur Johan 2010-07-01 14:05:45
la source

13 ответов

Je ne peux pas penser à un moyen avec le style, mais vous pourriez juste mettre le texte de la case à cocher à rien, et mettre un TextView à la gauche de la case à cocher avec votre texte désiré.

36
répondu xil3 2010-07-01 14:10:54
la source

je pense qu'il est trop tard pour répondre à cette question, mais en fait il y a un moyen d'atteindre votre objectif. Il vous suffit d'ajouter la ligne suivante à votre case à cocher:

android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorMultiple"

Vous pouvez utiliser vos propres dessiné par case.

et pour un radioButton:

android:button="@null"
android:drawableRight="@android:drawable/btn_radio"

Et si vous voulez le faire par programmation:

définissez une mise en page et nommez-la RightCheckBox et copiez ce qui suit lignes:

<?xml version="1.0" encoding="utf-8"?>
<CheckBox xmlns:android="http://schemas.android.com/apk/res/android"
    android:text="hello"
    android:layout_width="match_parent" 
    android:layout_height="match_parent"
    android:button="@null"
    android:drawableRight="?android:attr/listChoiceIndicatorMultiple"/>

et quand vous devez l'ajouter par programmation, vous avez juste besoin de le gonfler à une Case à cocher et l'ajouter à la vue de la racine.

CheckBox cb = (CheckBox)((LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE)).inflate(R.layout.check_right_checkbox,null);
rootView.addView(cb);
299
répondu Hazhir 2014-06-20 10:34:06
la source

Vous pouvez le faire

<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right|center"//or "center_vertical" for center text
android:layoutDirection="rtl"
android:text="hello" />

la ligne suivante est suffisante

android:layoutDirection="rtl"
53
répondu Mahesh Lad 2017-06-12 12:56:13
la source

vous pouvez ajouter android:layoutDirection="rtl" mais il est seulement disponible avec L'API 17.

42
répondu The Berga 2016-05-27 16:21:07
la source

copiez ceci:

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Your text:"/>
        <CheckBox
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            />
    </LinearLayout>

Heureux codding! :)

14
répondu Ivo Stoyanov 2015-06-25 11:47:02
la source

case à cocher le texte peut ne pas s'aligner à gauche avec

android:button="@null"
android:drawableRight="@android:drawable/btn_radio"

dans un appareil. Peut utiliser CheckedTextView comme un remplacement pour éviter le problème,

<CheckedTextView
    ...
    android:checkMark="@android:drawable/btn_radio" />

et ce lien sera utile: texte aligné gauche, case à cocher droite

11
répondu cfh008 2017-05-23 13:31:33
la source
4
répondu Abhigyan 2016-02-09 13:00:24
la source

comme suggéré par @The Berga vous pouvez ajouter android:layoutDirection="rtl" mais il est seulement disponible avec API 17.

pour la dynamique de la mise en œuvre, ici, il va

chkBox.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
4
répondu Sri Kanth 2017-06-08 10:25:21
la source

en outre de Hazhir imput, pour ce problème est nécessaire injecter cette propriété dans la configuration de case à cocher xml android: paddingLeft= "0dp", c'est pour éviter l'espace vide à la case à cocher côté gauche.

3
répondu zeusboy 2014-10-17 19:10:58
la source

ajout D'une autre réponse à cette question qui utilise CheckedTextView si quelqu'un essaie de le faire de façon programmatique. Il a également la possibilité d'utiliser des images personnalisées pour une case à cocher. Et peut être fait en une seule Vue

final CheckedTextView checkBox = new CheckedTextView(getApplicationContext());
    checkBox.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));
    checkBox.setId(1);
    checkBox.setCheckMarkDrawable(android.R.drawable.checkbox_off_background);
    checkBox.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (checkBox.isChecked()){
                checkBox.setChecked(false);
                checkBox.setCheckMarkDrawable(android.R.drawable.checkbox_off_background);
            }else{
                checkBox.setChecked(true);
                checkBox.setCheckMarkDrawable(android.R.drawable.checkbox_on_background);
            }
        }
    });
    checkBox.setTextColor(Color.BLACK);
    checkBox.setGravity(Gravity.LEFT);
    checkBox.setText("hi");

à Partir de XML si vous voulez lancer -

<CheckedTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checkMark="@android:drawable/checkbox_off_background"
        android:checked="false"
        android:text="Hi from xml"/>
1
répondu Kapil G 2017-07-29 10:49:44
la source

le lien suivant montre comment rendre seveveral standard Android view objects avec une case à cocher animée sur la droite en paramétrant le bon drawable.

Définir l'arrière-plan pour obtenir un effet d'entraînement.

[lien vers le site Web avec Exemple de case à cocher à droite et à gauche.][1] http://landenlabs.com/android/uicomponents/uicomponents.html#checkbox

         <Button
            android:id="@+id/p2Button1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"

            android:background="@drawable/transparent_ripple"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:text="Button"
            android:textAllCaps="false"

            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <android.support.v7.widget.AppCompatButton
            android:id="@+id/p2Button2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"

            android:background="@drawable/transparent_ripple"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:text="AppCompatButton"
            android:textAllCaps="false"

            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <TextView
            android:id="@+id/p2TextView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"

            android:background="@drawable/transparent_ripple"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:hapticFeedbackEnabled="true"

            android:text="TextView"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <android.support.v7.widget.AppCompatTextView
            android:id="@+id/p2TextView2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"

            android:background="@drawable/transparent_ripple"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:hapticFeedbackEnabled="true"

            android:text="AppCompatTextView"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="@android:color/white" />

        <CheckBox
            android:id="@+id/p2Checkbox1"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:button="@null"
            android:checked="true"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:text="CheckBox"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <android.support.v7.widget.AppCompatCheckBox
            android:id="@+id/p2Checkbox2"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:button="@null"
            android:checked="true"
            android:drawableRight="@drawable/checkline"
            android:gravity="left|center_vertical"
            android:text="AppCompatCheckBox"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <android.support.v7.widget.AppCompatCheckedTextView
            android:id="@+id/p2Checkbox3"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:checkMark="@drawable/checkline"
            android:checked="true"
            android:gravity="left|center_vertical"
            android:text="AppCompatCheckedTextView"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <!--  android:checkMark="?android:attr/listChoiceIndicatorMultiple" -->
        <CheckedTextView
            android:id="@+id/p2Checkbox4"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:checkMark="@drawable/checkline"
            android:checked="true"
            android:gravity="left|center_vertical"
            android:text="CheckedTextView"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <CheckBox
            android:id="@+id/p2Checkbox5"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:checked="true"
            android:gravity="center_vertical|end"
            android:text="CheckBox"
            android:textColor="@android:color/white"
            android:textSize="@dimen/buttonTextSize" />

        <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="@android:color/white" />


        <ToggleButton
            android:id="@+id/p2ToggleButton1"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:checked="true"
            android:drawableRight="@drawable/checkline"
            android:gravity="center_vertical|left"
            android:textAllCaps="false"
            android:textColor="@android:color/white"

            android:textOff="ToggleButtonOff"

            android:textOn="ToggleButtonOn"
            android:textSize="@dimen/buttonTextSize" />

        <ToggleButton
            android:id="@+id/p2ToggleButton2"
            android:layout_width="match_parent"
            android:layout_height="@dimen/buttonHeight"
            android:background="@drawable/transparent_ripple"
            android:checked="true"
            android:drawableRight="@drawable/btn_check_material_anim"
            android:gravity="center_vertical|left"
            android:textAllCaps="false"

            android:textColor="@android:color/white"
            android:textOff="ToggleBtnnAnimOff"
            android:textOn="ToggleBtnnAnimOn"
            android:textSize="@dimen/buttonTextSize" />

Echantillon checkline.xml (dans drawable, voir le lien pour la version animée dans drawable-v21)

exemple transparent.xml (dans drawable-v21)

<!-- Limit ripple to view object, can also use shape such as oval -->
<item android:id="@android:id/mask" android:drawable="@android:color/white" />

<item>
    <selector xmlns:android="http://schemas.android.com/apk/res/android"
        android:enterFadeDuration="200"
        android:exitFadeDuration="200">

        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <solid android:color="#80c0c000" />
            </shape>
        </item>
    </selector>
</item>


échantillon transparent.xml( à dessiner, surligner seulement aucune ondulation disponible)

<item android:state_pressed="true">
    <shape android:shape="rectangle">
        <solid android:color="#80c0c000" />
    </shape>
</item>
<item>
    <shape android:shape="rectangle">
        <solid android:color="@android:color/transparent" />
    </shape>
</item>

0
répondu LanDenLabs 2016-01-03 06:39:09
la source

Si elle n'est pas obligatoire d'utiliser un CheckBox , vous pouvez simplement utiliser un Switch à la place. Un commutateur affiche le texte à gauche par défaut.

0
répondu Oliver Kranz 2017-02-14 16:16:09
la source
<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="@string/location_permissions"
            android:textAppearance="@style/TextAppearance.AppCompat.Medium"
            android:textColor="@android:color/black" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <CheckBox
                android:id="@+id/location_permission_checkbox"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_marginRight="8dp"
                android:onClick="onLocationPermissionClicked" />

        </RelativeLayout>
    </LinearLayout>
-1
répondu FAHAD HAMMAD ALOTAIBI 2017-07-28 02:02:22
la source

Autres questions sur android layout checkbox