0
votes

Créer une ligne pointillée dans ListView Formulaires Xamarin

Comment puis-je créer une ligne pointillée à utiliser comme séparateur pour la vue de ma liste?

Exemple:

 Entrez la description de l'image ici


1 commentaires

4 Réponses :


1
votes

Vous pouvez réaliser via un rendu comme ci-dessous,

// PCL
public class BoxViewExt : BoxView
{

}

// Android
public class BoxViewExtRenderer : BoxRenderer
{
    public BoxViewExtRenderer(Context context) : base(context)
    {
    }

    protected override void OnDraw(Canvas canvas)
    {
        base.OnDraw(canvas);

        var paint = new Paint { StrokeWidth = 2, AntiAlias = true };
        paint.SetStyle(Paint.Style.Stroke);
        paint.SetPathEffect(new DashPathEffect(new[] { 6 * this.Context.Resources.DisplayMetrics.Density, 2 * this.Context.Resources.DisplayMetrics.Density }, 0));

        var p = new Path();
        p.LineTo(canvas.Width, 0);
        canvas.DrawPath(p, paint);
    }
}


0 commentaires

1
votes

0 commentaires

1
votes

Vous le faites avec Saskhaisharp et une petite vue personnalisée. Cette solution ne nécessite pas de rendriers personnalisés.

  1. Installez les packages de Nuge suivants sur votre projet Xamarin Forms XXX

  2. Créer une contentView XXX

  3. Utilisez-le dans XAML XXX


1 commentaires

Mais sur le rendre vertical, il ne couvrira pas dans toute la mise en page seulement deux tirets apparaîtra pour ce changement de xaml



0
votes
  1. xxx pré>
    1. OL>
      <Line Grid.Row="0"
            Grid.ColumnSpan="2"
            X2="10"
            Stroke="Red"
            StrokeThickness="0.8" 
            StrokeDashArray="1,8"
            Aspect="UniformToFill"
            HorizontalOptions="FillAndExpand"
            VerticalOptions="End"/>
      

0 commentaires