代码之家  ›  专栏  ›  技术社区  ›  Ryan

调整StackLayout元素的高度

  •  0
  • Ryan  · 技术社区  · 7 年前

    我对Xamarin表单真的很陌生,我刚刚接到任务,为这个应用程序的Android版本调整UI。在安卓手机上,用户界面看起来不错,但在平板电脑上有点小。因此,我开发了一个新页面,当设备是平板电脑时可以进入,但是我似乎无法调整StackLayout元素的高度。代码如下:

    <ListView.ItemTemplate>
      <DataTemplate>
        <ViewCell>
          <StackLayout VerticalOptions="Fill" Spacing="0" Padding="0" Margin="0">
            <StackLayout VerticalOptions="Fill" HeightRequest="60" Padding="2" Orientation="Horizontal">
              <Label VerticalOptions="Center" FontSize="19" Margin="14,0,0,0" Text="{Binding Name}" TextColor="White" ></Label>
              <Image VerticalOptions="Center" HorizontalOptions="EndAndExpand" HeightRequest="50" WidthRequest="30" Source="imgArrow.png"></Image>
            </StackLayout>
            <BoxView Margin="0,2,0,0" HeightRequest="0.5" BackgroundColor="White" />
          </StackLayout>
        </ViewCell>
      </DataTemplate>
    </ListView.ItemTemplate>
    

    不管我在HeightRequest字段中输入了什么值,它看起来总是一样的。我肯定我错过了一些基本的东西。下面是它在屏幕上的样子 https://imgur.com/MAHgOgr pic with font size 40 . 非常感谢您对我的任何帮助。谢谢

    2 回复  |  直到 7 年前
        1
  •  1
  •   Martin O.    7 年前

    您是否尝试将listview的“hasUnderrows”属性设置为true?

        2
  •  0
  •   Nick Kovalsky    7 年前
    1. 检测是否为平板电脑/手机,为您将使用的变量设置正确的高度
    2. 由于您处于DataTemplate中,因此将HeightRequest绑定到您设置的变量。