Xamarin.Forms Forme: Percorso
La Path
classe deriva dalla Shape
classe e può essere usata per disegnare curve e forme complesse. Queste curve e forme vengono spesso descritte usando Geometry
oggetti . Per informazioni sulle proprietà che la Path
classe eredita dalla Shape
classe , vedere Xamarin.Forms Forme.
Path
definisce le proprietà seguenti:
Data
, di tipoGeometry
, che specifica la forma da disegnare.RenderTransform
, di tipoTransform
, che rappresenta la trasformazione applicata alla geometria di un percorso prima che venga disegnata.
Queste proprietà sono supportate da BindableProperty
oggetti, il che significa che possono essere destinazioni di data binding e stili.
Per altre informazioni sulle trasformazioni, vedere Xamarin.Forms Trasformazioni di percorso.
Creare un percorso
Per disegnare un percorso, creare un Path
oggetto e impostarne la Data
proprietà. Esistono due tecniche per impostare la Data
proprietà:
- Puoi impostare un valore stringa per
Data
in XAML, usando la sintassi di markup del percorso. Con questo approccio, ilPath.Data
valore usa un formato di serializzazione per la grafica. In genere, questo valore stringa non viene modificato manualmente dopo la creazione. Si usano invece strumenti di progettazione per modificare i dati ed esportarli come frammento di stringa utilizzabile dallaData
proprietà . - È possibile impostare la
Data
proprietà su unGeometry
oggetto . Può trattarsi di un oggetto specificoGeometry
o di unGeometryGroup
oggetto che funge da contenitore che può combinare più oggetti geometry in un singolo oggetto.
Creare un percorso con la sintassi di markup del percorso
L'esempio XAML seguente mostra come disegnare un triangolo usando la sintassi di markup del percorso:
<Path Data="M 10,100 L 100,100 100,50Z"
Stroke="Black"
Aspect="Uniform"
HorizontalOptions="Start" />
La Data
stringa inizia con il comando di spostamento, indicato da M
, che stabilisce un punto di inizio assoluto per il percorso. L
è il comando della riga, che crea una linea retta dal punto iniziale al punto finale specificato. Z
è il comando close, che crea una riga che connette il punto corrente al punto iniziale. Il risultato è un triangolo:
Per altre informazioni sulla sintassi di markup del percorso, vedere Xamarin.Forms Sintassi di markup path.
Creare un percorso con oggetti Geometry
Le curve e le forme possono essere descritte utilizzando Geometry
oggetti , che vengono utilizzati per impostare la Path
proprietà dell'oggetto Data
. Sono disponibili diversi Geometry
oggetti tra cui scegliere. Le EllipseGeometry
classi , LineGeometry
e RectangleGeometry
descrivono forme relativamente semplici. Per creare forme più complesse o creare curve, utilizzare un oggetto PathGeometry
.
PathGeometry
gli oggetti sono costituiti da uno o più PathFigure
oggetti. Ogni PathFigure
oggetto rappresenta una forma diversa. Ogni PathFigure
oggetto è costituito da uno o più PathSegment
oggetti, ognuno dei quali rappresenta una parte di connessione della forma. I tipi di segmento includono le LineSegment
classi , BezierSegment
e ArcSegment
seguenti.
L'esempio XAML seguente illustra come disegnare un triangolo usando un PathGeometry
oggetto :
<Path Stroke="Black"
Aspect="Uniform"
HorizontalOptions="Start">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigureCollection>
<PathFigure IsClosed="True"
StartPoint="10,100">
<PathFigure.Segments>
<PathSegmentCollection>
<LineSegment Point="100,100" />
<LineSegment Point="100,50" />
</PathSegmentCollection>
</PathFigure.Segments>
</PathFigure>
</PathFigureCollection>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
In questo esempio il punto iniziale del triangolo è (10.100). Un segmento di linea viene disegnato da (10.100) a (100.100) e da (100.100) a (100.50). Le figure prima e gli ultimi segmenti sono quindi connessi, perché la PathFigure.IsClosed
proprietà è impostata su true
. Il risultato è un triangolo:
Per altre informazioni sulle geometrie, vedere Xamarin.Forms Geometrie.