Alternative à base.OnAppearing dans Xamarin.Forms


stephen.webb

Questions de base, existe-t-il une alternative à base.OnAppearing qui ne fonctionnera qu'une seule fois?

Actuellement, dans OnAppearing, j'ai un script qui génère des cadres en fonction du résultat d'une requête. Si je verrouille l'écran et que je le déverrouille, il interroge à nouveau et ajoute le résultat au bototm de la liste, dupliquant essentiellement les résultats.

Je pourrais ajouter une vérification sur un booléen HasLoaded en premier, mais il doit sûrement y avoir un moyen intégré d'exécuter uniquement le script Onload? J'ai regardé à travers les propriétés de la base et je ne vois rien d'évident.

Merci de votre aide!

Marco Rehmer

Il est préférable de déplacer votre script vers le constructeur ou de créer une Initméthode qui est appelée de l'extérieur (si possible). Lorsque vous créez votre page, avant d'appeler, appelez PushAsyncsimplement Initvotre Pageinstance.

OnAppearing / OnDisappearing n'est pas un très bon endroit pour un tel code, comme indiqué dans la documentation Microsoft ( https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/navigation/hierarchical ).

Les appels aux remplacements OnDisappearing et OnAppearing ne peuvent pas être traités comme des indications garanties de navigation dans les pages. Par exemple, sur iOS, le remplacement OnDisappearing est appelé sur la page active lorsque l'application se termine.

Il est donc possible que votre script soit ignoré.

Articles connexes


Que se passe-t-il dans OnAppearing of Xamarin Forms?

Alan2 J'ai une application Forms qui fonctionne bien mais je remarque que les couleurs d'arrière-plan apparaissent incorrectement pendant une fraction de seconde lorsque la page apparaît. J'ai ce code pour mon OnAppearing protected override async void OnAp

Xamarin.Forms Page.DisplayAlert dans Page.OnAppearing

Bondoline Je ne parviens pas à DisplayAlertafficher une fenêtre contextuelle dans le OnAppearingrappel d'un Xamarin.Forms Page. Voici ce que j'ai essayé jusqu'à présent : protected override void OnAppearing() { base.OnAppearing(); this.DisplayAlert("A

Xamarin Forms overriding OnAppearing causes app to crash

Matt Douhan I am trying to do a simple override and load some data when my page loads, I am using the following code in the code behind page. namespace XYZ { public partial class MainPage : ContentPage { private Label results; private L

Alternative pour ViewBox dans Xamarin Forms

Prady Existe-t-il une alternative pour ViewBox dans Xamarin , où je peux conserver le rapport hauteur/largeur de mes images ? Je convertis mon application Windows Phone en Xamarin Forms. Et la plupart de mes écrans ont des images cliquables où je capture les c

formulaires xamarin - utilisation de RaiseChild dans OnAppearing

SombreW1nter À partir de cette question que j'ai posée plus tôt, est-il possible d'exécuter la fonction ShowLess lorsque la page s'ouvre afin que la pile apparaisse réduite? J'ai essayé de le faire dans OnAppearing mais cela n'a pas fonctionné. protected o