我正在使用具有Android和IOS项目的便携式Xamarin.Forms(跨平台)。
我正在使用轮播页面,以便我可以刷页面。
我只希望中间内容不刷整页。页眉和页脚不应该滑动
您可以在下图中看到整页正在滑动。我只想要中间内容滑动
请建议我怎么做?
答案 0 :(得分:1)
您应该针对您的用例查看Xamarin.Forms.CarouselView
的预发布版本:
Nuget: `Xamarin.Forms.CarouselView 2.3.0-pre2`
CarouselView
是CarouselPage
的替代品。在CarouselPage
的未来版本中,Xamarin.Forms
将被标记为已弃用。
CarouselView
是虚拟化的,当处理超过几页时,内存减少超过CarouselPage
,并且可以像Page
中的“{1}}那样使用可以将页眉/页脚模板应用到您的页面,并将CarouselView
放在中心。
答案 1 :(得分:1)
我使用listview进行水平滑动而不是coursal页面。它工作正常
答案 2 :(得分:0)
这是一个使用ControlTemplates的相对简单的重构:
Xamarin.Forms control templates
假设您正在使用MVVM,则可以将ControlTemplate分配给ContentPage controlTemplate属性:例如
contentView.ControlTemplate = new SampleControlTemplate()
我个人在ControlTemplate中使用GridViews来获得更有限的布局控制。最终输出是定义为ContentPresenter将使用您的ContentPage中的布局填充的区域(在您的情况下是CarouselPage)。