2016-09-19 19 views
4

いくつかのアイテムを含むリストビューを表示しようとしています。これらのアイテムの間に少しのスペースを入れたいだけです。Xamarin Listview StackLayoutアイテム間のスペース

私はこのことについてGoogleに語っていますが、私にとってはうまくいく答えが見つかりませんでした。 私が望むのと同じ結果が得られましたが、うまくいきませんでした:https://stackoverflow.com/a/30827419/1845593

私はxamarinのフォーム2.3.2.127を使用しています。これについてはxamlを使いたいと思います。

私のXAMLコード:

<pages:MainXaml.Content> 
<ListView x:Name="AccountsList" 
      ItemsSource="{Binding Items}" 
      SeparatorVisibility="None" 
      BackgroundColor="Gray"> 
    <ListView.ItemTemplate> 
    <DataTemplate> 
     <ViewCell> 
     <ViewCell.View> 
      <StackLayout BackgroundColor="White" Margin="0,0,0,20" > 
      <Label Text="{Binding Name}" 
       VerticalTextAlignment="Center" 
       LineBreakMode="TailTruncation" 
        /> 
      <Label Text="{Binding Amount}" 
        VerticalTextAlignment="Center" 
        LineBreakMode="TailTruncation"/> 
      </StackLayout> 
     </ViewCell.View> 
     </ViewCell> 
    </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 
</pages:MainXaml.Content> 

私は間隔、パディングとMargingと試みたが、それらのどれも働きました。

ビジュアル結果/予想:

enter image description here

おかげ

答えて

2

を私はちょうど私がHasUnevenRows = Trueのを設定する必要があることを知ります。私は最後に「>」を望んでいたので、それから私は、グリッドに変更:

<ListView xmlns="http://xamarin.com/schemas/2014/forms" 
      xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
      x:Class="ConsumerBanking.UserControls.AccountsListView" 
      SeparatorVisibility="None" 
      BackgroundColor="Transparent" 
      HasUnevenRows="True" > 

    <ListView.ItemTemplate> 
    <DataTemplate> 
     <ViewCell> 
     <ViewCell.View> 

      <Grid BackgroundColor="White" Margin="0,0,0,1" > 
      <Grid.RowDefinitions> 
       <RowDefinition Height="*" /> 
      </Grid.RowDefinitions> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="*" /> 
       <ColumnDefinition Width="Auto" /> 
      </Grid.ColumnDefinitions> 

      <StackLayout Grid.Column="0" Margin="10,5,0,5"> 
       <Label Text="{Binding Name}" 
        VerticalTextAlignment="Center" 
        LineBreakMode="TailTruncation"/> 
       <Label Text="{Binding Amount}" 
        VerticalTextAlignment="Center" 
        LineBreakMode="TailTruncation" 
        FontSize="Large"/> 
      </StackLayout> 

      <Label Text=">" Grid.Column="1" VerticalTextAlignment="Center" Margin="0,0,20,0" 
        FontSize="Large" TextColor="{StaticResource darkGray}"/> 
      </Grid> 
     </ViewCell.View> 
     </ViewCell> 
    </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 
関連する問題