【发布时间】:2022-01-21 20:06:53
【问题描述】:
想在使用 CarouselView 导航范式时如何显示和从列表视图导航到详细信息视图来开动脑筋。
具体来说,假设您有一个这样的轮播页面:
<ContentPage>
<Grid>
<CarouselView>
<CarouselView.ItemsSource>
<x:Array Type="{x:Type ContentView}">
<c:View0 />
<c:View1 />
<c:View2 />
</CarouselView.ItemsSource>
</CarouselView>
</Grid>
</ContentPage>
还假设轮播中的一个视图(例如 View1)包含从您的数据库中获取的产品列表,例如:
<CollectionView ItemsSource="{Binding listofproducts}" SelectionChanged="OnItemClicked">
<CollectionView.ItemTemplate>
<DataTemplate>
<StackLayout>
<Label Text="{Binding productname}"
</StackLayout>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
当用户触发 OnItemClicked() 时,您将如何显示产品的详细信息页面?如果你打开一个详细视图,那会不会混淆 CarouselView 导航逻辑?以及如何进入列表页面?
不确定哪种方法可以在这里奏效。 有什么想法/例子吗?
提前致谢!
【问题讨论】:
-
我不确定您认为 Carousel 会如何“混淆”?只需做一个 PushAsync - 我不明白为什么这不起作用。虽然在轮播中拥有一个列表对我来说似乎是糟糕的用户体验 - 我更担心会混淆用户。
-
这就是我的意思,混淆用户,而不是控件本身。问题是,我真的很喜欢 Carousel 范式,我想让它与 List -> Detail 范式一起工作,但我不知道如何让这两个概念融合在一起。
-
我会尝试一下,看看用户的行为是什么样的
-
我做到了,这令人困惑。一旦用户进入详细信息页面,他可以从那里去哪里并不明显。令我惊讶的是,在我看来,这似乎是使用轮播导航的一个相当常见的使用场景,但我还没有找到任何示例或尝试。
标签: listview xamarin carousel detailview