Xamarin - не занимает всю область на экране, используя сетку - PullRequest
0 голосов
/ 14 мая 2018

У меня есть 4 кнопки в нижней части экрана в качестве меню, и я использовал сетку, чтобы показать 4 кнопки одинаковой ширины и высоты, и они будут занимать весь экран. У меня есть эти коды, но результат не так, как я хотел. Это не занимает весь экран. Пожалуйста, помогите мне, как я могу этого достичь. Спасибо.

<AbsoluteLayout BackgroundColor="#BC3022" MinimumHeightRequest="20" Padding="0,10,10,10" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
                <Grid ColumnSpacing="0">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="*"/>
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>
                    <BoxView Grid.Row="0" Grid.Column="0"/>
                    <StackLayout Grid.Row="0" Grid.Column="0" Padding="10,2,10,2">
                        <Image Source="home.png" WidthRequest="40" HeightRequest="25"/>
                        <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Home</Label>
                    </StackLayout>
                    <BoxView Grid.Row="0" Grid.Column="1"/>
                    <StackLayout Grid.Row="0" Grid.Column="1" Padding="10,2,10,2">
                        <Image Source="jobs.png" WidthRequest="40"  HeightRequest="25">
                            <Image.GestureRecognizers>
                                <TapGestureRecognizer Tapped="OnJobsGestureTap" NumberOfTapsRequired="1" />
                            </Image.GestureRecognizers>
                        </Image>
                        <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Jobs</Label>
                    </StackLayout>
                    <BoxView Grid.Row="0" Grid.Column="2"/>
                    <StackLayout Grid.Row="0" Grid.Column="2" Padding="10,2,10,2">
                        <Image Source="sync.png" WidthRequest="40" HeightRequest="25"/>
                        <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Sync</Label>
                    </StackLayout>
                    <BoxView Grid.Row="0" Grid.Column="3"/>
                    <StackLayout Grid.Row="0" Grid.Column="3" Padding="10,2,10,2">
                        <Image Source="logout.png" WidthRequest="40" HeightRequest="25">
                            <Image.GestureRecognizers>
                                <TapGestureRecognizer Tapped="OnLogoutGestureTap" NumberOfTapsRequired="1" />
                            </Image.GestureRecognizers>
                        </Image>
                        <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Signout</Label>
                    </StackLayout>
                </Grid>
            </AbsoluteLayout>

Вот как это выглядит:

enter image description here

1 Ответ

0 голосов
/ 14 мая 2018

Попробуйте заменить свой код следующим кодом:

<StackLayout BackgroundColor="#BC3022" MinimumHeightRequest="20" Padding="10,10,10,10" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
            <Grid ColumnSpacing="0">
                <Grid.RowDefinitions>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="25*" />
                    <ColumnDefinition Width="25*" />
                    <ColumnDefinition Width="25*" />
                    <ColumnDefinition Width="25*" />
                </Grid.ColumnDefinitions>
                <BoxView Grid.Row="0" Grid.Column="0"/>
                <StackLayout Grid.Row="0" Grid.Column="0" Padding="10,2,10,2">
                    <Image Source="home.png" WidthRequest="40" HeightRequest="25"/>
                    <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Home</Label>
                </StackLayout>
                <BoxView Grid.Row="0" Grid.Column="1"/>
                <StackLayout Grid.Row="0" Grid.Column="1" Padding="10,2,10,2">
                    <Image Source="jobs.png" WidthRequest="40"  HeightRequest="25">
                        <Image.GestureRecognizers>
                            <TapGestureRecognizer Tapped="OnJobsGestureTap" NumberOfTapsRequired="1" />
                        </Image.GestureRecognizers>
                    </Image>
                    <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Jobs</Label>
                </StackLayout>
                <BoxView Grid.Row="0" Grid.Column="2"/>
                <StackLayout Grid.Row="0" Grid.Column="2" Padding="10,2,10,2">
                    <Image Source="sync.png" WidthRequest="40" HeightRequest="25"/>
                    <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Sync</Label>
                </StackLayout>
                <BoxView Grid.Row="0" Grid.Column="3"/>
                <StackLayout Grid.Row="0" Grid.Column="3" Padding="10,2,10,2">
                    <Image Source="logout.png" WidthRequest="40" HeightRequest="25">
                        <Image.GestureRecognizers>
                            <TapGestureRecognizer Tapped="OnLogoutGestureTap" NumberOfTapsRequired="1" />
                        </Image.GestureRecognizers>
                    </Image>
                    <Label Text="" TextColor="White" FontSize="15" HorizontalOptions="Center">Signout</Label>
                </StackLayout>
            </Grid>           
        </StackLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...