猿问

Xamarin使用Gridview形成按钮

我在xamarin视图中有一个Carousel。在网格视图中有Carousel。也有一个按钮,但是问题是按钮未正确放置。我想将注册按钮littlebit放在上方和整个宽度。

这是我的看法

我的密码

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"

         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

         xmlns:local="clr-namespace:InfutureMob"

         x:Class="InfutureMob.MainPage"

         xmlns:cv="clr-namespace:Xamarin.Forms;assembly=Xamarin.Forms.CarouselView">


    <Grid RowSpacing="0" Grid.RowSpan="2">

        <!--<Grid.RowDefinitions>

            <RowDefinition Height=".3*"/>

            <RowDefinition Height=".7*"/>

        </Grid.RowDefinitions>-->

    <Grid.RowDefinitions>

        <RowDefinition Height="5*"/>

        <RowDefinition Height="*"/>

        <RowDefinition Height="5*"/>

    </Grid.RowDefinitions>

    <cv:CarouselView ItemsSource="{Binding Zoos}" x:Name="CarouselImages" >

            <cv:CarouselView.ItemTemplate>

                <DataTemplate>

                <Grid>

                    <Grid.RowDefinitions>

                        <RowDefinition Height="*"/>

                        <RowDefinition Height="Auto"/>

                    </Grid.RowDefinitions>

                    <Image Grid.RowSpan="2" Aspect="AspectFill" Source="{Binding ImageUrl}"/>

                    <StackLayout Grid.Row="1" BackgroundColor="#80000000" Padding="12">

                        <Label TextColor="White" Text="{Binding Name}" FontSize="16" HorizontalOptions="Center" VerticalOptions="CenterAndExpand"/>

                    </StackLayout>


                </Grid>


            </DataTemplate>

            </cv:CarouselView.ItemTemplate>

        </cv:CarouselView>

    <StackLayout Orientation="Horizontal" HorizontalOptions="StartAndExpand"  Margin="20,20,20,0" Grid.Row="2">



        <Button Text="Register" BackgroundColor="#3897f0" TextColor="White" HeightRequest="50" VerticalOptions="Start" />


    </StackLayout>

</Grid></ContentPage>


泛舟湖上清波郎朗
浏览 221回答 1
1回答

犯罪嫌疑人X

有几件事情引人注目...首先,为网格定义3行,但是包含Button的StackLayout在Grid.Row =“ 2”中,如果需要在Carousel下方,则应为1。(出于可读性的考虑,最好将Grid.Row =“ 0”放在转盘上)其次,您不需要使用StackLayout来包装按钮,而是将HorizontalOptions放置到FillAndExpand中,以使按钮可以填充整个网格。
随时随地看视频慕课网APP
我要回答