平台上的网格大小不同

时间:2017-08-28 15:17:54

标签: xamarin xamarin.forms

我有一个网格,在Windows Univesal中,HeightRequest是160,在Android和iOS上它将是100.如何在XAML中的每个平台识别中执行此操作?

<ListView x:Name="List" IsRefreshing="False" IsPullToRefreshEnabled="True" BackgroundColor="#ffffff">
    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell>          
                //-- if Grid = windows
                <Grid Padding="5" HeightRequest="160">

                //-- if Grid = ios and android
                <Grid Padding="5" HeightRequest="100">

                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="90"/>
                        <ColumnDefinition Width="5"/>
                        <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>
                    <StackLayout HeightRequest="80" WidthRequest="80">
                    </StackLayout>
                </Grid>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

1 个答案:

答案 0 :(得分:1)

<Grid >
    <Grid.HeightRequest>
        <OnPlatform x:TypeArguments="x:Double"
            iOS="100"
            Android="100"
            WinPhone="160" />
    </Grid.HeightRequest>
</Grid>