【问题标题】:Display ListView in Full Screen [Xamarin.Forms]全屏显示 ListView [Xamarin.Forms]
【发布时间】:2016-12-30 06:35:01
【问题描述】:

我在使用 ListView 时遇到问题,我需要全屏显示此列表。我的 ItemSource 中有 55 行。

这是我的代码 sn-p。

<Grid Grid.Row="0" BackgroundColor="#5FB1E0">
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="Auto"></ColumnDefinition>
      <ColumnDefinition Width="*"></ColumnDefinition>
      <ColumnDefinition Width="Auto"></ColumnDefinition>
    </Grid.ColumnDefinitions>
    <StackLayout Grid.Column="0" Margin="10">
      <Image x:Name="ImageMenu" Source="{local:ImageResource HRiS.images.menu.png}" HeightRequest="40"></Image>
    </StackLayout>
    <Label Grid.Column="1" x:Name="LabelHome" FontSize="18" TextColor="White" VerticalTextAlignment="Center"></Label>
  </Grid>
  <ListView Grid.Row="1" x:Name="listEmployeeDirectory" HasUnevenRows="True" VerticalOptions="FillAndExpand"
            IsPullToRefreshEnabled="True" >
    <ListView.ItemTemplate>
      <DataTemplate>
        <ViewCell>
          <StackLayout Padding="5,10">
            <Grid>
              <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"></ColumnDefinition>
                <ColumnDefinition Width="*"></ColumnDefinition>
              </Grid.ColumnDefinitions>
              <Image Grid.Column="0" HeightRequest="50">
                <Image.Source>
                  <UriImageSource Uri="{Binding ProfileImage}" CacheValidity="5" CachingEnabled="true" />
                </Image.Source>
              </Image>
              <Label Grid.Column="1" Text="{Binding FullName}" HorizontalOptions="StartAndExpand"
                     VerticalTextAlignment="Center" TextColor="Black" FontSize="18" FontFamily="Droid Sans Mono" />
            </Grid>
          </StackLayout>
        </ViewCell>
      </DataTemplate>
    </ListView.ItemTemplate>
  </ListView>
</Grid>

这是屏幕截图。

【问题讨论】:

  • 第 1 行的行定义是什么?我的意思是那一行的高度
  • 对不起,第 0 行的 RowDefinition 是 Auto,第 1 行是 *(星号)

标签: android listview xamarin.forms fullscreen screen-size


【解决方案1】:

试试这个你只需要放你的元素

 <Grid VerticalOptions="StartAndExpand" HorizontalOptions="CenterAndExpand" >
    <Grid.RowDefinitions>
      <RowDefinition Height="Auto" />
      <RowDefinition Height="*" />
      <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>
     <StackLayout Grid.Row="0" Margin="10" HeightRequest="50" BackgroundColor="Gray" Orientation ="Horizontal">
       <Image  HeightRequest="10"/>
       <Label Text="Test" FontSize="18" TextColor="White" VerticalTextAlignment="Center"/>
    </StackLayout>
    <ListView Grid.Row="1" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" IsVisible="true" ItemTapped="ItemTapped" ItemsSource="{Binding Projects}">
        <ListView.ItemTemplate>
          <DataTemplate>
            <ViewCell>
              <StackLayout BackgroundColor="#eee" Orientation="Vertical">
                <StackLayout Orientation="Horizontal">
                  <Image Source="{Binding image}"/>
                  <Label Text="{Binding title}" TextColor="#f35e20" />
                </StackLayout>
              </StackLayout>
            </ViewCell>
          </DataTemplate>
        </ListView.ItemTemplate>
      </ListView>
    <StackLayout Grid.Row="2" Margin="10" HeightRequest="50" BackgroundColor="Gray" Orientation ="Horizontal">
      <Label Text="Test" FontSize="18" TextColor="White" VerticalTextAlignment="Center"></Label>
    </StackLayout>
  </Grid>

【讨论】:

  • 谢谢,我现在正在尝试。
  • 我仍然无法全屏显示列表视图,我在 ContentView 中使用列表视图
【解决方案2】:

此问题已解决,我使用了 Grid 布局,现在我已将其更改为 StackLayout,它现在可以正常工作。

谢谢你:)

<StackLayout AbsoluteLayout.LayoutBounds="0, 0, 1, 1" AbsoluteLayout.LayoutFlags="All" x:Name="HomeChildContainer">
            <Grid BackgroundColor="#297FB8">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="50">
                    </ColumnDefinition>
                    <ColumnDefinition Width="*">
                    </ColumnDefinition>
                    <ColumnDefinition Width="Auto">
                    </ColumnDefinition>
                </Grid.ColumnDefinitions>
                <StackLayout Grid.Column="0" Margin="10" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand">
                    <Image x:Name="ImageMenu" Source="menu.png" HeightRequest="40" />
                </StackLayout>
                <Label Grid.Column="1" x:Name="LabelHome" FontSize="18" TextColor="White" VerticalTextAlignment="Center">
                </Label>
            </Grid>
            <Entry Grid.Row="1" x:Name="TextSerach" Keyboard="Chat" Placeholder="Search Employee" FontSize="13" FontFamily="Droid Sans Mono" />
            <ListView Grid.Row="2" x:Name="listEmployeeDirectory" HasUnevenRows="True" VerticalOptions="FillAndExpand" IsPullToRefreshEnabled="True" HorizontalOptions="FillAndExpand">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <ViewCell>
                            <StackLayout Padding="5,10">
                                <Grid>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="Auto">
                                        </ColumnDefinition>
                                        <ColumnDefinition Width="*">
                                        </ColumnDefinition>
                                    </Grid.ColumnDefinitions>
                                    <Image Grid.Column="0" Source="{Binding ProfileImage}" HeightRequest="50">
                                    </Image>
                                    <Label Grid.Column="1" Text="{Binding FullName}" HorizontalOptions="StartAndExpand" VerticalTextAlignment="Center" TextColor="Black" FontSize="16" FontFamily="Droid Sans Mono" />
                                </Grid>
                            </StackLayout>
                        </ViewCell>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </StackLayout>

【讨论】:

  • 未按预期工作
  • 对我来说工作得很好。详细分享一下你的问题。
猜你喜欢
  • 1970-01-01
  • 2017-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多