Scrollview中的Xamarin Forms Listview不会滚动

时间:2016-05-09 08:31:03

标签: listview xamarin scrollview xamarin.forms

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
         x:Class="Dh.ListPage">
<ContentPage.Content>
    <ScrollView>
        <StackLayout Style="{StaticResource MainStackLayoutWhenLoggedInStyle}">
            <Frame Style="{StaticResource FrameStyle2}">
                <StackLayout>
                    <Label Text="Vragenlijsten" Style="{StaticResource TitelLabelStyle}" />
                </StackLayout>
            </Frame>
            <Frame Style="{StaticResource FrameStyle2}">
                <StackLayout>
                    <Label Text="DRINGENDE VRAGEN: vul deze vragen meteen in!" Style="{StaticResource StandardLabelStyle}"/>
                    <Frame Style="{StaticResource FrameStyle2}">
                        <StackLayout Style="{StaticResource ListViewStackLayoutStyle}" >
                            <ListView ItemTapped="OnItemTapped" ItemsSource="{Binding Question_Lists}" Style="{StaticResource StandardListViewStyle}">
                                <ListView.ItemTemplate>
                                    <DataTemplate>
                                        <ViewCell>
                                            <ViewCell.View>
                                                <Label Text="{Binding Title}" Style="{StaticResource StandardLabelStyle}" />
                                            </ViewCell.View>
                                        </ViewCell>
                                    </DataTemplate>
                                </ListView.ItemTemplate>
                            </ListView>
                        </StackLayout>
                    </Frame>
                </StackLayout>
            </Frame>
        </StackLayout>
    </ScrollView>
</ContentPage.Content>

当我的屏幕太小时,我的列表视图不想滚动。如果我的屏幕不是太小,那么listview会滚动。有人可以帮我吗?

3 个答案:

答案 0 :(得分:5)

永远不要在ScrollView中堆叠ListView,因为两者都至少在Android上实现滚动。

答案 1 :(得分:1)

Xamarin.Forms.ScrollView Class文档说:

  

应用程序开发人员不应将一个ScrollView嵌套在另一个中。此外,他们应该避免嵌套其他可以滚动的元素,例如WebView。

ListView.ScrollTo Method将ListView滚动到项目。

答案 2 :(得分:0)

将StackLayout放入ListView.Header或ListView.Footer

<ListView ItemsSource="{Binding Comments}">
    <ListView.Header>
        <StackLayout Padding="30,30,30,0">
            <Label Text="Article" />
        </StackLayout>
    </ListView.Header>
    <ListView.Footer>
        <StackLayout HeightRequest="85" />
    </ListView.Footer>
</ListView>