Xamarin.Forms
Ajustements visuels spécifiques à la plate-forme
Recherche…
Ajustements Idiom
Des ajustements spécifiques à l'idiome peuvent être effectués à partir du code C #, par exemple pour modifier l'orientation de la mise en page, que la vue soit affichée ou un téléphone ou une tablette.
if (Device.Idiom == TargetIdiom.Phone)
{
this.panel.Orientation = StackOrientation.Vertical;
}
else
{
this.panel.Orientation = StackOrientation.Horizontal;
}
Ces fonctionnalités sont également disponibles directement à partir du code XAML:
<StackLayout x:Name="panel">
<StackLayout.Orientation>
<OnIdiom x:TypeArguments="StackOrientation">
<OnIdiom.Phone>Vertical</OnIdiom.Phone>
<OnIdiom.Tablet>Horizontal</OnIdiom.Tablet>
</OnIdiom>
</StackLayout.Orientation>
</StackLayout>
Ajustements de la plateforme
Des ajustements peuvent être effectués pour des plates-formes spécifiques à partir du code C #, par exemple pour modifier le remplissage de toutes les plates-formes ciblées.
if (Device.OS == TargetPlatform.iOS)
{
panel.Padding = new Thickness (10);
}
else
{
panel.Padding = new Thickness (20);
}
Une méthode d'assistance est également disponible pour les déclarations C # raccourcies:
panel.Padding = new Thickness (Device.OnPlatform(10,20,0));
Ces fonctionnalités sont également disponibles directement à partir du code XAML:
<StackLayout x:Name="panel">
<StackLayout.Padding>
<OnPlatform x:TypeArguments="Thickness"
iOS="10"
Android="20" />
</StackLayout.Padding>
</StackLayout>
Utiliser des styles
Lorsque vous travaillez avec XAML, l'utilisation d'un Style
centralisé vous permet de mettre à jour un ensemble de vues stylisées à partir d'un seul endroit. Tous les réglages de langue et de plate-forme peuvent également être intégrés à vos styles.
<Style TargetType="StackLayout">
<Setter Property="Padding">
<Setter.Value>
<OnPlatform x:TypeArguments="Thickness"
iOS="10"
Android="20"/>
</Setter.Value>
</Setter>
</Style>
Utiliser des vues personnalisées
Vous pouvez créer des vues personnalisées pouvant être intégrées à votre page grâce à ces outils de réglage.
Sélectionnez File > New > File... > Forms > Forms ContentView (Xaml)
et créez une vue pour chaque présentation spécifique: TabletHome.xaml
et PhoneHome.xaml
.
Sélectionnez ensuite File > New > File... > Forms > Forms ContentPage
et créez un File > New > File... > Forms > Forms ContentPage
HomePage.cs
contenant:
using Xamarin.Forms;
public class HomePage : ContentPage
{
public HomePage()
{
if (Device.Idiom == TargetIdiom.Phone)
{
Content = new PhoneHome();
}
else
{
Content = new TabletHome();
}
}
}
Vous avez maintenant un HomePage
qui crée une hiérarchie de vue différente pour Phone
idiomes du Phone
et de la Tablet
.