是否有使用MvvmCross + Xamarin.Forms在平板电脑和手机上使用不同页面布局的便捷方法? 也许在MvvmCross中为此实现了某些东西?
答案 0 :(得分:0)
您有几种选择,首先可以重新设置页面,为Phone或Tablet设置特定的值,并重复使用相同的XAML。
示例:
<Grid VerticalOptions="FillAndExpand">
<Grid.ColumnSpacing>
<OnIdiom x:TypeArguments="x:Double"
Phone="20"
Tablet="40"/>
</Grid.ColumnSpacing>
<Grid.RowSpacing>
<OnIdiom x:TypeArguments="x:Double"
Phone="10"
Tablet="20"/>
</Grid.RowSpacing>
<Grid.Padding>
<OnIdiom x:TypeArguments="Thickness"
Phone="10, 10, 10, 0"
Tablet="20, 20, 20, 0"/>
</Grid.Padding>
<!-- Grid Content -->
</Grid>
另一种选择是,有两个不同的页面,一个页面用于平板电脑,一个页面用于手机:
if (Device.Idiom == TargetIdiom.Tablet || Device.Idiom == TargetIdiom.Desktop)
await Navigation.PushAsync(new StoresTabletPage());
else
await Navigation.PushAsync(new StoresPage());
您可以找到更多信息here