【问题标题】:CarouselPage with progress indicator?带有进度指示器的 CarouselPage?
【发布时间】:2017-11-11 21:33:56
【问题描述】:

我有一个注册页面,字段太多,需要我把它分成4个页面, 我认为最好的体验是拥有一个CarouselPage 和四个ContentPages,可以轻松导航,并且拥有一个具有相应视图模型的视图。 在问主要问题之前,我想确保我做出了正确的决定,并且我没有错过任何其他专门用于我不知道的情况的选项(我仍然是我的第一个Xamarin 中的步骤)。 如果CarouselPage 是要走的路,那么我想在屏幕底部有一些指示器,它显示注册进度,就像一个进度条,在每个下一页上增加 25%,这与所有 @ 987654324@s在一起

【问题讨论】:

    标签: c# xamarin xamarin.forms carousel


    【解决方案1】:

    您可以使用 CarouselView,它是 CarouselPage 的继承者。有一个文档如何实现CarouseView,这里很好blog post

    我可以告诉你如何开始。 CarouselViev 类似于 ListView。

    <controls:CarouselViewControl 
        x:Name="MyCarouselView">
        <controls:CarouselView.ItemTemplate>
            <DataTemplate>
                <StackLayout>
                    <Entry 
                        Placeholder="{Binding FirstEntryName}"
                        Text="{Binding FirstEntryText, Mode=TwoWay}"
                        IsVisible="{Binding FirstEntryVisible}" />
                    <Entry 
                        Placeholder="{Binding SecondEntryName}"
                        Text="{Binding FirstEntryText, Mode=TwoWay}"
                        IsVisible="{Binding SecondEntryVisible}" />
                </StackLayout>
            </DataTemplate>
        </controls:CarouselView.ItemTemplate>
    </controls:CarouselViewControl>
    

    然后您可以使用 ObservableCollection DataFromEntries 填充 ItemSource,MyViewData 如下所示:

    public class MyViewData
    {
        public string FirstEntryName { get; set; }
        public string FirstEntryText { get; set; }
        public bool FirstEntryVisible { get; set; }
        public string SecondEntryName { get; set; }
        public string SecondEntryText { get; set; }
        public bool SecondEntryVisible { get; set; }
    }
    

    要启用指标,您需要将属性 ShowIndicators 设置为 true。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-23
      • 2018-10-19
      • 1970-01-01
      • 2015-12-26
      • 2015-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多