在我的Xamarin表单应用程序中,ScrollView中有多个ListView控件。但在android中,滚动不适用于ListView。有没有替代方案?
答案 0 :(得分:8)
你不应该将ListViews包含在ScrollView中,因为它会混淆这两者的滚动行为。 您需要考虑到这一点重新设计页面。
实施例: 1)在StackLayout中使用ListViews 2)在ScrollView中使用TableViews
答案 1 :(得分:8)
你可以简单地使用set' NestedScrollingEnabled'属于本机的属性。 对于xamarin表单,您可以创建自定义渲染器并设置' NestedScrollingEnabled'属性真实
protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.ListView> e)
{
base.OnElementChanged(e);
if (e.NewElement != null)
{
var listView = this.Control as Android.Widget.ListView;
listView.NestedScrollingEnabled = true;
}
}
答案 2 :(得分:3)
ListView实现了自己的滚动,可能与ScrollView冲突。
如果您需要能够在同一个ScrollView中滚动两个列表,您可以创建自定义视图(而不是使用单元格),将它们放在ScrollView内的StackLayout中
More about ListView performance,他们甚至解释了为什么你不应该在ScrollView中放置ListView
答案 3 :(得分:0)
您是否考虑过使用一个列表视图而不是多个列表视图?
答案 4 :(得分:0)
我使用了可以固定到该高度的任何网格,并且列表视图不会滚动