我使用<ScrollView>
使页面可滚动,我尝试使用<AbsoluteLayout>
使页面顶部有一个固定的图像。即使向下滚动页面时,图像也必须保持其固定位置。不允许将<AbsoluteLayout>
放置在<ScrollView>
的外部,但在它的内部。它将随着页面滚动。完全摆脱<ScrollView>
也将禁用滚动。
如何在屏幕顶部放置固定的全宽图像,同时仍然保持可滚动页面?
<ScrollView>
<Grid RowDefinitions="auto,auto,auto" ColumnDefinitions="*" x:DataType="local:Project">
<CarouselView Grid.Row="0"
ItemsSource="{Binding images}"
IndicatorView="indicatorView"
IsSwipeEnabled="True">
<CarouselView.ItemsLayout>
<LinearItemsLayout SnapPointsType="MandatorySingle"
SnapPointsAlignment="Center"
Orientation="Horizontal"/>
</CarouselView.ItemsLayout>
<CarouselView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding .}"
Aspect="AspectFill"/>
</DataTemplate>
</CarouselView.ItemTemplate>
</CarouselView>
<IndicatorView Grid.Row="1" x:Name="indicatorView"/>
<ScrollView Grid.Row="2" Grid.Column="0" Margin="8,0,8,32">
<VerticalStackLayout>
<!-- Page content here -->
</VerticalStackLayout>
</ScrollView>
<AbsoluteLayout>
<!-- What to do here??? -->
<VerticalStackLayout AbsoluteLayout.LayoutFlags="PositionProportional"
AbsoluteLayout.LayoutBounds="0,0,100,100">
<Image Source="test.svg" Aspect="AspectFill"/>
</VerticalStackLayout>
</AbsoluteLayout>
</Grid>
</ScrollView>
对于任何<AbsoluteLayout>
元素也是如此,就像一个浮动的操作按钮,它只是随着页面滚动。
1条答案
按热度按时间xzlaal3s1#
一种方法是将ScrollView放入AbsoluteLayout中。在AbsoluteLayout中,您可以将图像设置在固定位置。考虑以下代码:
然后当滚动页面时,图像将停留在固定的位置。
希望能成功。