0

Je suis novice en matière de mise en page de contraintes et j'ai du mal à comprendre comment la créer par programmation.Comment créer une mise en page de contraintes par programmation

Voici mon code XML pour elle:

<RelativeLayout 
     android:id="@+id/ShareContainer" 
     android:layout_width="0dp" 
     android:layout_height="0dp" 
     android:layout_marginTop="0dp" 
     android:layout_marginBottom="0dp" 
     app:layout_constraintDimensionRatio="16:9" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toBottomOf="@+id/StatusContainer" 
     app:layout_constraintBottom_toTopOf="@+id/ButtonContainer"> 

     <com.myapp.ui.testLayout 
      android:id="@+id/ShareVideo" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@color/black"/> 

     <ImageButton 
      android:id="@+id/ShareToggle" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_alignParentRight="true" 
      android:layout_marginBottom="36dp" 
      android:layout_marginLeft="16dp" 
      android:background="@android:color/transparent" 
      android:src="@drawable/ic_video_cam_switch" /> 
    </RelativeLayout> 

par exemple Quels sont les équivalents de code de

app:layout_constraintDimensionRatio, app:layout_constraintLeft_toLeftOf, 
app:layout_constraintRight_toLeftOf, app:layout_constraintTop_toBottomOf, 
app:layout_constraintBottom_toTopOf, etc 
+1

vous ne le convertir en code Java .... qu'est-ce que vous essayez de faire. – DroiDev

+0

Je suis en train d'ajouter par programmation la disposition des contraintes –

Répondre

1

Vous pouvez créer une disposition de contrainte par programmation de la même manière que vous créez une autre disposition. En outre, vous pouvez définir par programme des contraintes en utilisant ConstraintSet.

Dans votre cas:

ConstraintSet set = new ConstraintSet (context); 
int id = R.id.ShareContainer, root_id=R.id.root_container; // I don't know root container id, so suppose it is root_container 

// ratio 
set.setDimensionRatio(id, "16:9"); 

//SIDE to SIDE of VIEW 
set.connect(id, BOTTOM, root_id, BOTTOM, 8); //object, side, anchor, anchor's side, margin 
set.applyTo(contraintLayout); 
+0

pouvez-vous expliquer en ce qui concerne mon code, sera utile de comprendre comme un exemple –

+0

@MarissaNicholas voir modifier – Valentun