Xamarin 在 ListView 上形成 ActivityIndicator
Xamarin Forms ActivityIndicator over ListView
我的ActivityIndicator在页面底部,但应该在中间。我尝试了我在互联网上找到的一切,但没有任何效果。
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>
尝试更改 ActivityIndicator 周围的 StackLayout 以使用:
AbsoluteLayout.LayoutFlags="PositionProportional"
AbsoluteLayout.LayoutBounds="0.5,0.5,-1,-1"
PositionPropertional
标志告诉AbsoluteLayout,元素的x和y位置是基于绝对布局的大小,考虑到元素的大小。所以 0.5 告诉它使元素在 AbsoluteLayout 中居中。
宽度和高度的值都设置为-1。这被认为是宽度和高度的 "special value",意思是 "Auto"。
我的ActivityIndicator在页面底部,但应该在中间。我尝试了我在互联网上找到的一切,但没有任何效果。
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>
尝试更改 ActivityIndicator 周围的 StackLayout 以使用:
AbsoluteLayout.LayoutFlags="PositionProportional"
AbsoluteLayout.LayoutBounds="0.5,0.5,-1,-1"
PositionPropertional
标志告诉AbsoluteLayout,元素的x和y位置是基于绝对布局的大小,考虑到元素的大小。所以 0.5 告诉它使元素在 AbsoluteLayout 中居中。
宽度和高度的值都设置为-1。这被认为是宽度和高度的 "special value",意思是 "Auto"。