【问题标题】:White space in CollectionViewCollectionView 中的空白
【发布时间】:2020-12-26 21:36:41
【问题描述】:

我有一个包含一些元素的 CollectionView。在 CollectionView 上方,页面底部我有一个按钮。当我们进行滚动时,我希望在 CollectioView 的最后一个元素之后有一些空白空间,以便正确显示所有元素。不知道怎么实现。

这是我的 XAML 代码

 <CollectionView               
        x:Name="CategoryView" 
        RelativeLayout.WidthConstraint="{ConstraintExpression
        Type=RelativeToParent,
        Property=Width,
        Factor=1}"
        RelativeLayout.YConstraint="{ConstraintExpression
        Type=Constant,
        Constant=160}"             
        Margin="10,0,10,0"
        HeightRequest="590"
        SelectionMode="Multiple"
        SelectionChanged="CategoryView_SelectionChanged">
        <CollectionView.ItemsLayout>
            <GridItemsLayout Orientation="Vertical" Span="2" VerticalItemSpacing="3" HorizontalItemSpacing="4"/>
        </CollectionView.ItemsLayout>
        <CollectionView.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="38"/>
                        <RowDefinition Height="38"/>
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>
                   
                    <Image Grid.Row="0" Grid.RowSpan="2" Grid.Column="0" Source="{Binding Image}"/>
                    <Label Grid.Row="1" Grid.Column="0"  Text="{Binding Titolo}" FontSize="19" FontAttributes="Bold" TextColor="White" Margin="13,0,0,0"/>
                    <Image Grid.Row="0" Grid.Column="0" Source="checked.png" IsVisible="{Binding Vis}"/>
                </Grid>
            </DataTemplate>
        </CollectionView.ItemTemplate>
    </CollectionView>
    <Button
        x:Name="ButtonInizia"
        RelativeLayout.WidthConstraint="{ConstraintExpression
        Type=RelativeToParent,
        Property=Width,
        Factor=1}"
        RelativeLayout.YConstraint="{ConstraintExpression
        Type=Constant,
        Constant=670}"
        Clicked="ButtonInizia_Clicked"
        HorizontalOptions="Center"
        BackgroundColor="Blue"
        Text="INIZIA"
        FontSize="16"
        TextColor="White"
        FontAttributes="Bold"
        HeightRequest="60"
        WidthRequest="300"/>

【问题讨论】:

  • 只需在CollectionView 中添加下边距。
  • 或者你在问如何让按钮看起来固定在视图的底部?在这种情况下使用DockPanel
  • 即使我将下边距添加到 collectionView 也不会改变

标签: c# xaml xamarin.forms


【解决方案1】:

也许您可以将 Button 放在 Collectionview 的页脚中。广告CollectionView中item的末尾有一个Button。

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/collectionview/layout#headers-and-footers

<CollectionView.Footer>
            <StackLayout BackgroundColor="LightGray">
                <Button Margin="10,0,0,0"
                       Text="Friends of Xamarin Monkey"
                       FontSize="Small"
                       FontAttributes="Bold"
                        Clicked="Button_Clicked"/>
            </StackLayout>
        </CollectionView.Footer>

【讨论】:

  • 我希望按钮始终位于顶部。但是你给了我一个想法。我通过在 CollectionView.Footer 中插入一个透明按钮来解决它,这样我可以将它滑得更高
  • 在我阅读您的帖子之前和当我阅读您的帖子时在页脚中使用了一个按钮,也许这也是您可以使用的东西
猜你喜欢
  • 2021-05-05
  • 2012-09-17
  • 2021-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-07
  • 1970-01-01
  • 2015-01-04
相关资源
最近更新 更多