У меня проблема. В моем приложении у меня есть StackLayout с ListView под ним, поэтому, когда я щелкаю на стеке, вид списка скрывается или отображается. Я также сделал это ниже ListView с CollectionView. Теперь для ListView у меня нет проблем, но когда отображается CollectionView, он обрезает мой экран поверх ListView. Я покажу вам 2 картинки. Это мой экран, когда CollectionView скрыт, потому что все так, как я хочу:
Но вот как показано CollectionView:
Теперь я понятия не имею, что вызывает это, потому что я просто хочу, чтобы CollectionView продолжал падать, и когда мне нужно, вы можете прокрутить вниз, чтобы показать больше, если у вас много устройств. Вот мой код CollectionView:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:controls="clr-namespace:MyApp.Tools;assembly=MyApp"
mc:Ignorable="d"
x:Class="MyApp.Pages.Devices"
BackgroundImageSource="background">
<StackLayout Orientation="Vertical">
<StackLayout HeightRequest="70" BackgroundColor="#013252" Orientation="Horizontal">
<Frame VerticalOptions="CenterAndExpand" HeightRequest="30" Margin="15,0,0,0" BackgroundColor="Transparent" Padding="0">
<Image Source="menu" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand" HeightRequest="25"/>
</Frame>
<Label Text="Devices" TextColor="White" FontSize="25" VerticalOptions="CenterAndExpand" Margin="10,0,0,0" />
<Frame VerticalOptions="FillAndExpand" HorizontalOptions="EndAndExpand" Margin="0,0,15,0" BackgroundColor="Transparent" Padding="0">
<Image Source="plus" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand" HeightRequest="25" />
<Frame.GestureRecognizers>
<TapGestureRecognizer Tapped="addDevice_Clicked" />
</Frame.GestureRecognizers>
</Frame>
</StackLayout>
<StackLayout Orientation="Vertical">
<StackLayout Orientation="Horizontal" HeightRequest="35" Margin="20,0,20,0">
<Image Source="lightbulb" HorizontalOptions="Start" VerticalOptions="CenterAndExpand"/>
<Label Text="{Binding deviceCount, StringFormat='Devices ({0})'}" TextColor="White" FontSize="20" VerticalOptions="CenterAndExpand" Margin="10,0,0,0"/>
<Image Source="list_arrow_down" HorizontalOptions="EndAndExpand" VerticalOptions="CenterAndExpand" x:Name="imgArrowHeaderDevices"/>
<StackLayout.GestureRecognizers>
<TapGestureRecognizer Tapped="headerDevices_Clicked" />
</StackLayout.GestureRecognizers>
</StackLayout>
<ListView ItemsSource="{Binding knownDeviceList}" RowHeight="70" SelectionMode="None" ItemTapped="rowDevice_Clicked" x:Name="lstDevices">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<AbsoluteLayout HeightRequest="60" Margin="20,5,20,5">
<StackLayout Opacity="0.1" BackgroundColor="White"
AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All" />
<StackLayout AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All">
<Grid RowSpacing="0">
<Grid.RowDefinitions>
<RowDefinition Height="28" />
<RowDefinition Height="28" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="60" />
</Grid.ColumnDefinitions>
<controls:IconView Source="{Binding DeviceImage}" Grid.RowSpan="2" Grid.Column="0" Margin="5" Foreground="{Binding DeviceImageColor}" />
<Label Grid.Row="0" Grid.Column="1" Text="{Binding Name}" FontSize="18" TextColor="White" />
<Label Grid.Row="1" Grid.Column="1" Text="{Binding StateShown}" FontSize="16" TextColor="White" />
<controls:IconView x:Name="btnPower" Source="power" Grid.RowSpan="2" Grid.Column="2" Margin="5"
Foreground="{Binding PowerStateColor}">
<controls:IconView.GestureRecognizers>
<TapGestureRecognizer Command="{Binding Path=BindingContext.cmdTogglePower, Source={x:Reference lstDevices}}" CommandParameter="{Binding Id}" />
</controls:IconView.GestureRecognizers>
</controls:IconView>
</Grid>
</StackLayout>
</AbsoluteLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
<StackLayout Orientation="Horizontal" HeightRequest="35" Margin="20,0,20,0">
<Image Source="scene_icon" HorizontalOptions="Start" VerticalOptions="CenterAndExpand"/>
<Label Text="{Binding sceneCount, StringFormat='Scenes ({0})'}" TextColor="White" FontSize="20" VerticalOptions="CenterAndExpand" Margin="10,0,0,0"/>
<Image Source="list_arrow_down" HorizontalOptions="EndAndExpand" VerticalOptions="CenterAndExpand" x:Name="imgArrowHeaderScenes"/>
<StackLayout.GestureRecognizers>
<TapGestureRecognizer Tapped="headerScenes_Clicked" />
</StackLayout.GestureRecognizers>
</StackLayout>
<CollectionView ItemsSource="{Binding sceneList}" SelectionMode="Single" SelectionChanged="rowScene_Clicked" x:Name="lstScenes" >
<CollectionView.ItemsLayout>
<GridItemsLayout Orientation="Vertical"
Span="2" />
</CollectionView.ItemsLayout>
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="70" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<AbsoluteLayout HeightRequest="60" Margin="20,5,20,5" Grid.Row="0" Grid.Column="0">
<StackLayout Opacity="0.1" BackgroundColor="White"
AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All" />
<StackLayout AbsoluteLayout.LayoutBounds="0,0,1,1"
AbsoluteLayout.LayoutFlags="All">
<Grid RowSpacing="0">
<Grid.RowDefinitions>
<RowDefinition Height="60" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Frame Grid.Row="0" Grid.Column="0" BackgroundColor="#009fe3" VerticalOptions="CenterAndExpand" WidthRequest="50" HeightRequest="50" CornerRadius="35" Margin="5" Padding="0">
<Label Text="{Binding FirstLetter}" TextColor="White" FontSize="25" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand" />
</Frame>
<Label Grid.Row="0" Grid.ColumnSpan="2" Text="{Binding Name}" FontSize="18" TextColor="White" HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand"/>
</Grid>
</StackLayout>
</AbsoluteLayout>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</StackLayout>
</StackLayout>
</ContentPage>
Что я делаю не так?