Séparateur / séparateur de dessin Android Ligne dans la mise en page?

Je voudrais dessiner une ligne juste au milieu d’une mise en page et l’utiliser comme séparateur d’autres éléments comme TextView. Y a-t-il un bon widget pour cela? Je ne veux pas vraiment utiliser une image car il serait difficile de faire correspondre les autres composants. Et je veux que ce soit aussi bien positionné. Merci

J’utilise habituellement ce code pour append une ligne horizontale:

 

Pour append un séparateur vertical, changez les valeurs layout_width et layout_height

Améliorer les réponses fournies par Alex Kucherenko et Dan Dar3

J’ai ajouté ceci à mes styles:

  

Ensuite, dans mes dispositions, il y a moins de code et plus simple à lire.

  

Ajoutez ceci dans votre mise en page où vous voulez le diviseur (modifiez les atsortingbuts pour répondre à vos besoins):

  

Vous pouvez l’utiliser dans LinearLayout :

 android:divider="?android:dividerHorizontal" android:showDividers="middle" 

Par exemple:

        
  

utilisez ce code. Ça aidera

  

Si vous utilisez actionBarSherlock, vous pouvez utiliser la classe com.actionbarsherlock.internal.widget.IcsLinearLayout pour prendre en charge les séparateurs et les afficher entre les vues.

exemple d’utilisation:

  ... children... 

res / drawable / divider.xml:

      

notez que pour une raison quelconque, l’aperçu dans le concepteur graphique dit “android.graphics.bitmap_delegate.nativeRecycle (I) Z”. Je ne suis pas sûr de ce que cela signifie, mais cela peut être ignoré car cela fonctionne très bien sur les nouvelles versions d’Android et les anciennes (testées sur Android 4.2 et 2.3).

semble que l’erreur ne s’affiche que lorsque vous utilisez API17 pour le concepteur graphique.

Écrivez simplement ceci:

  android:divider="?android:dividerHorizontal" android:showDividers="middle" 

exemple complet:

     

J’ai le moyen le plus simple d’append un diviseur.

Diviseur vertical:

Vue de séparation verticale

Séparateur horizontal:

Vue de séparation horizontale

C’est tout oui!

Il suffit de mettre ceci dans res>values>styles.xml

    

Voici votre réponse..il s’agit d’un exemple pour tracer une ligne entre les contrôles …

    

Ce code trace une ligne entre deux contrôles …

Ajout de cette vue qui dessine un séparateur entre vos textviews

  

C’est très simple. Créez simplement une vue avec la couleur de fond noire.

  

Cela créera une ligne horizontale avec une couleur d’arrière-plan. Vous pouvez également append d’autres atsortingbuts tels que des marges, des rembourrages, etc., comme n’importe quelle autre vue.

Il ajoute un séparateur horizontal à n’importe quel endroit de votre mise en page.

   
 //for vertical line:  //for horizontal line:  //it works like a charm 

Version d’exécution:

 View dividerView = new View(getContext()); LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams( ViewGroup.LayoutParams.FILL_PARENT, UIUtils.dpToPix(getContext(), 1)); dividerView.setLayoutParams(lp); TypedArray array = getContext().getTheme() .obtainStyledAtsortingbutes(new int[] {android.R.attr.listDivider}); Drawable draw = array.getDrawable(0); array.recycle(); dividerView.setBackgroundDrawable(draw); mParentLayout.addView(dividerView); 

utiliser ce code xml pour append une ligne verticale

   

utiliser ce code xml pour append une ligne horizontale

  
  

Entre deux mises en page Mettez ce code pour obtenir le diviseur.

Dans les cas où l’on utilise la propriété android:layout_weight pour affecter un espace d’écran disponible aux composants de la mise en page, par exemple

   ... ...  /* And we want to add a verical separator here */  ... ...   

Pour append un séparateur entre les deux mises en page existantes qui ont déjà pris toute la surface de l’écran, nous ne pouvons pas simplement append un autre LinearLayout avec android:weight:"1" car cela créera trois colonnes de largeur égale. Au lieu de cela, nous allons réduire la quantité d’espace que nous allons donner à cette nouvelle mise en page. Le code final ressemblerait à ceci:

   ... ...  /* *************** ********************** */ /* Add another LinearLayout with android:layout_weight="0.01" and android:background="#your_choice" */  /* Or View can be used */  /* *************** ********************** */  ... ...   

entrer la description de l'image ici

Vous pouvez utiliser cet élément juste après le premier TextView.

   
  

Si vous comptez l’utiliser beaucoup, la meilleure chose à faire est de

styles.xml:

  

maintenant dans votre mise en page, ajoutez-le simplement comme:

  

J’utilise habituellement ce code:

  

Si vous avez un object dans votre mise en page et que vous souhaitez définir la ligne ci-dessous qui utilise cet atsortingbut dans ImageView:

 android:layout_below="@+id/textBox1" 

Cela vous aiderait à résoudre ce problème. Ici, une petite vue est créée pour créer une ligne noire comme séparateur entre deux vues.

   

Ajoutez une ligne noire horizontale en utilisant ceci:

  

Pour compléter la réponse de Camille Sévigny, vous pouvez également définir votre propre forme de ligne, par exemple pour personnaliser la couleur de la ligne.

Définissez une forme xml dans un répertoire pouvant être dessiné. line_horizontal.xml:

      

Utilisez cette ligne dans votre mise en page avec les atsortingbuts souhaités:

   

Voici le code “une ligne de séparation horizontale entre deux vues de texte”. Essaye ça

    /> 

Diviser l’espace en deux parties égales:

     

Notez qu’une partie contient un diviseur à la fin

Solution simple

ajoutez simplement ce code dans votre mise en page et remplacez “Id_of__view_present_above” par l’id de la vue, en dessous duquel vous avez besoin du diviseur.

  

Par exemple, si vous avez utilisé recyclerView pour vos articles:

dans build.gradle écrire:

 dependencies { comstack 'com.yqritc:recyclerview-flexibledivider:1.4.0' 

Si vous souhaitez définir des valeurs de couleur, de taille et de marge, vous pouvez spécifier les éléments suivants:

 RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview); recyclerView.addItemDecoration( new HorizontalDividerItemDecoration.Builder(this) .color(Color.RED) .sizeResId(R.dimen.divider) .marginResId(R.dimen.leftmargin, R.dimen.rightmargin) .build());