Voglio sovrapporre il mio ActivityIndicator nel mezzo del mio modulo ma non sono del tutto sicuro di come posso fare questo, presumo di aver bisogno di avvolgere il mio layout di stack in un layout relativo?Xamarin.Forms - Come sovrapporre un ActivityIndicator nel mezzo di uno StackLayout a livello di programmazione
sto facendo questo nel codice e l'esempio più vicino che ho trovato è utilizzare XAML che utilizza una griglia come si vede qui sotto:
<ScrollView BackgroundColor="#d3d6db">
<RelativeLayout
VerticalOptions="FillAndExpand"
HorizontalOptions="FillAndExpand">
<StackLayout Orientation="Vertical"
VerticalOptions="FillAndExpand"
Padding="10"
RelativeLayout.XConstraint="{ConstraintExpression Type=Constant, Constant=0}"
RelativeLayout.YConstraint="{ConstraintExpression Type=Constant, Constant=0}">
<Grid x:Name="SegmentGrid"
RowSpacing="10"
ColumnSpacing="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
</Grid>
<WebView BackgroundColor="White" VerticalOptions="FillAndExpand" Source="{Binding DescriptionHtml}" />
</StackLayout>
<ActivityIndicator IsVisible="{Binding IsBusy}"
IsRunning="{Binding IsBusy}"
Color="Black"
VerticalOptions="CenterAndExpand"
HorizontalOptions="CenterAndExpand"
RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
Property=Height,
Factor=0.33}"
RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
Property=Height,
Factor=0.33}" />
</RelativeLayout>
</ScrollView>
Una soluzione semplice, grazie !! –
Cosa succede se il mio stacklayout è stato spostato in griglia? –
In teoria dovrebbe andare bene, anche se ho già riscontrato problemi con i layout nidificati una volta che iniziano a diventare più profondi di 2-3. Quindi il tuo stack di layout sarebbe simile a questo, immagino (non mi sembra possibile formattare commenti): (1) AbsoluteLayout per indicatore di caricamento (2) tuo GridLayout (3) tuo StackLayout ... il tuo GridLayout sarà al stessa profondità dell'indicatore di caricamento – TeamTam