Comment puis-je créer une ligne pointillée à utiliser comme séparateur pour la vue de ma liste? p>
Exemple: P>
4 Réponses :
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);
}
}
Vous pouvez le faire dans le rendu personnalisé de listeView.
myListViewrenderer.cs: strong> p> xaml: forte > p> p> J'ai téléchargé le projet sur Github, vous pouvez télécharger à partir de ListViewsashedlinesDemo Dossier pour référence.
https://github.com/wendyzang/test.git P> p >
A > P>
Vous le faites avec Saskhaisharp et une petite vue personnalisée. Cette solution ne nécessite pas de rendriers personnalisés.
Installez les packages de Nuge suivants sur votre projet Xamarin Forms P>
Créer une contentView p>
Utilisez-le dans XAML P>
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
<Line Grid.Row="0"
Grid.ColumnSpan="2"
X2="10"
Stroke="Red"
StrokeThickness="0.8"
StrokeDashArray="1,8"
Aspect="UniformToFill"
HorizontalOptions="FillAndExpand"
VerticalOptions="End"/>
Jetez un coup d'œil à ce que Skia donne: docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interfac e / ...