2017-08-24 1 views
-1

J'ai essayé d'utiliser chainStyle mais je n'ai pas travaillé. S'il vous plaît suggérer une solution à cela. Je souhaite aligner ces boutons de manière centralisée, tout comme les deux textviews ci-dessus. J'ai fourni le code pour le bouton '+3 points' ici. Je veux implémenter cela en utilisant chainStyle. Que devrais-je faire pour ça?alignement central dans constraintLayout

<Button 
     android:id="@+id/points_3A" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:onClick="points3" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintRight_toLeftOf="@+id/points_3B" 
     app:layout_constraintTop_toBottomOf="@id/team_a_score" 
     app:layout_constraintHorizontal_chainStyle="spread"/> 

    <Button 
     android:id="@+id/points_3B" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:onClick="points3" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintLeft_toRightOf="@+id/points_3A" 
     app:layout_constraintTop_toBottomOf="@id/team_b_score" /> 

Répondre

0

Essayez d'utiliser une ligne directrice comme celui-ci

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Hello World!" 
    app:layout_constraintBottom_toBottomOf="parent" 
    app:layout_constraintLeft_toLeftOf="parent" 
    app:layout_constraintRight_toRightOf="parent" 
    app:layout_constraintTop_toTopOf="parent"/> 

<Button 
    android:id="@+id/points_3A" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_margin="8dp" 
    android:background="#EEEEEE" 
    android:paddingLeft="30dp" 
    android:paddingRight="30dp" 
    app:layout_constraintRight_toLeftOf="@+id/guideline" 
    android:text="+3 points" 
    /> 

<Button 
    android:id="@+id/points_3B" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_margin="8dp" 
    android:background="#EEEEEE" 
    android:paddingLeft="30dp" 
    android:paddingRight="30dp" 
    android:text="+3 points" 
    app:layout_constraintLeft_toRightOf="@+id/guideline" /> 

<android.support.constraint.Guideline 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/guideline" 
    android:orientation="vertical" 
    app:layout_constraintGuide_percent="0.5" 
    /> 

</android.support.constraint.ConstraintLayout> 
+0

Y at-il un moyen d'implémenter cela en utilisant chainStyle? –

0

Vous pouvez utiliser Guideline avec 50%, puis lié vos boutons à la ligne directrice

<android.support.constraint.Guideline 
     android:id="@+id/guidelineHalf" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     app:layout_constraintGuide_percent="0.5" /> 

Vos boutons seront maintenant:

<Button 
     android:id="@+id/points_3A" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:onClick="points3" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toLeftOf="@+id/guidelineHalf" 
     app:layout_constraintTop_toBottomOf="@id/team_a_score"/> 

    <Button 
     android:id="@+id/points_3B" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:onClick="points3" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintLeft_toRightOf="@+id/guidelineHalf" 
     app:layout_constraintTop_toBottomOf="@id/team_b_score" /> 
0

Ici comment vous pouvez faire le tout

<android.support.constraint.ConstraintLayout xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_height="match_parent"> 


    <Button 
     android:id="@+id/points_3A" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintRight_toLeftOf="@+id/points_3B" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginLeft="8dp" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/ta" /> 

    <Button 
     android:id="@+id/points_3B" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+3 points" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintLeft_toRightOf="@+id/points_3A" 
     android:layout_marginRight="8dp" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/tb" /> 

    <Button 
     android:id="@+id/points_2A" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+2 points" 
     app:layout_constraintRight_toLeftOf="@+id/points_2B" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/points_3A" /> 

    <Button 
     android:id="@+id/points_2B" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="+2 points" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintLeft_toRightOf="@+id/points_2A" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/points_3B" /> 

    <Button 
     android:id="@+id/points_FA" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="Free Throw" 
     app:layout_constraintRight_toLeftOf="@+id/points_FB" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/points_2A" /> 

    <Button 
     android:id="@+id/points_FB" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:background="#EEEEEE" 
     android:paddingLeft="30dp" 
     android:paddingRight="30dp" 
     android:text="Free Throw" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintLeft_toRightOf="@+id/points_FA" 
     android:layout_marginTop="8dp" 
     app:layout_constraintTop_toBottomOf="@+id/points_2B" /> 

    <TextView 
     android:id="@+id/ta" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="8dp" 
     android:layout_marginTop="8dp" 
     android:padding="8dp" 
     android:text="TeamA\n2" 
     android:textAlignment="center" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toLeftOf="@+id/tb" 
     app:layout_constraintTop_toTopOf="parent" /> 

    <TextView 
     android:id="@+id/tb" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginRight="8dp" 
     android:layout_marginTop="8dp" 
     android:padding="8dp" 
     android:text="TeamB\n2" 
     android:textAlignment="center" 
     app:layout_constraintLeft_toRightOf="@+id/ta" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="parent" /> 


</android.support.constraint.ConstraintLayout>