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> A > 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 >
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 / ...