【问题标题】:Xamarin Forms ActivityIndicator over ListViewXamarin Forms ActivityIndi​​cator over ListView
【发布时间】:2017-01-25 13:50:13
【问题描述】:

我的 ActivityIndi​​cator 位于页面底部,但它应该位于中间。我尝试了我在互联网上找到的所有东西,但没有任何效果。

Image

<AbsoluteLayout HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">

    <StackLayout AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0,0,1,1">
      <SearchBar Placeholder="Parkhaus suchen" Text="{Binding SearchText}"/>

      <ListView x:Name="HomeListView" ItemsSource="{Binding Parking}" HasUnevenRows="False"  VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
        <ListView.ItemTemplate>
          <DataTemplate>
            ...
          </DataTemplate>
        </ListView.ItemTemplate>
        <ListView.Footer/>
      </ListView>
    </StackLayout>

   <StackLayout AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0,0,1,1">
        <ActivityIndicator IsRunning="{Binding IsBusy}" IsVisible="{Binding IsBusy}" VerticalOptions="Center" HorizontalOptions="Center"/>
   </StackLayout>

</AbsoluteLayout>

【问题讨论】:

  • 尝试使用网格而不是绝对布局与 row1 - listview row2 活动指示器与 rowspan=2
  • 没什么变化,我现在有&lt;Grid&gt; &lt;StackLayout Grid.Row="0"&gt; &lt;/StackLayout&gt; &lt;StackLayout Grid.Row="1" Grid.RowSpan="2"&gt; &lt;/StackLayout&gt; &lt;/Grid&gt;

标签: xaml listview xamarin activity-indicator


【解决方案1】:

尝试更改您的 ActivityIndi​​cator 周围的 StackLayout 以使用:

AbsoluteLayout.LayoutFlags="PositionProportional"
AbsoluteLayout.LayoutBounds="0.5,0.5,-1,-1"

PositionPropertional 标志告诉 AbsoluteLayout 元素的 x 和 y 位置基于绝对布局的大小,同时考虑了元素的大小。所以 0.5 告诉它在 AbsoluteLayout 中将元素居中。

宽度和高度的值都设置为 -1。这被认为是宽度和高度的“特殊值”,意思是“自动”。

【讨论】:

  • 你的回答对我来说很有意义,但它仍然不起作用。当我删除 &lt;ListView&gt; 时,&lt;ActivityIndicator&gt; 会出现在中间,否则它仍然在底部。
  • 现在它可以工作了,但&lt;ActivityIndicator&gt; 必须高于&lt;ListView&gt;!感谢您的帮助。
  • 我很高兴你能成功。包含ListViewStackLayout 必须以某种方式摆脱计算。如果你用 AbsoluteLayout 包围 StackLayout 并将布局标志从 StackLayout 移动到 AbsoluteLayout 它也可以工作。
猜你喜欢
  • 2017-11-20
  • 2017-08-28
  • 2019-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-24
  • 2018-02-14
  • 1970-01-01
相关资源
最近更新 更多