2009-07-21 6 views

Répondre

3

Avec les états, vous pouvez avoir des objets dans chaque état avec le même ID - cela ne peut pas être fait avec un viewstack. Habituellement, les états sont utilisés lorsqu'un groupe d'objets est partagé entre les différents "états" ou "vues". Ainsi, par exemple, vous pouvez avoir un textinput dans chacun de vos états et donner à chacun le même identifiant de "nom d'utilisateur". Lorsque vous référencez l'identifiant "nom d'utilisateur", il utilisera l'objet dans l'état actuellement activé. Si vous essayez de le faire avec un viewstack, une erreur apparaîtra, indiquant que vous avez défini un identifiant de "nom d'utilisateur" plusieurs fois. Ainsi, en guise de conclusion ... utilisez les états lorsque vous ajoutez ou supprimez des composants d'un ensemble de composants partagés dans chaque état. Utilisez un viewstack lorsque chaque vue est différente et ne partage pas les composants.

+0

Merci Charis pour vos informations utiles –

0

Utilisez les états lorsque vos vues sont très similaires et ne diffèrent que par quelques contrôles ou composants. Si vous avez trop d'éléments AddChild/RemoveChild, il devient plus difficile pour un développeur de suivre votre code.

ViewStack prend également en charge l'instanciation différée via l'attribut "creationPolicy". Cela signifie que seul le premier conteneur d'un ViewStack sera initialisé lors du chargement de ViewStack. Cela peut vraiment accélérer le temps de chargement de votre application si vous (A) avez beaucoup d'enfants dans le ViewStack ou (2) les enfants sont des composants volumineux/complexes.

Questions connexes