Comment obtenir la taille d'un composant dans réagissent-natif?
Je sais qu'il y a
Dimensions.get('window');
Mais que penser d'un arbitraire de vue qui n'a pas de dim string? L'arbitraire du point de vue pourrait avoir beaucoup de sous-vues. La taille de la vue est décidée par le style et la disposition de la sous-vues, et il est difficile de calculer la taille de sous-vues.
OriginalL'auteur Rick | 2015-11-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez mesurer un point de vue à l'aide de la onLayout fonction mentionné ici et ici. Pour le configurer, vous devez appeler un onLayout fonction, qui prend un événement, et retourne un objet qui contient les nativeEvent objet. Cet objet contient les x & y, coordonnées, ainsi que la largeur et la hauteur de la vue.
J'ai mis en place un exemple de projet mise en œuvre du code ici:
https://rnplay.org/apps/mbPdZw
Ci-dessous est une configuration simple que les mesures en vue:
Grande réponse, mais je suis un peu inquiet au sujet de la performance. Avez-vous une idée de comment cela pourrait affecter une application de douceur?
L'appel de setState (via measureView) va déclencher un autre render et potentiellement créer une boucle infinie. Ce n'est pas recommandé de Réagir Natif. github.com/facebook/react/issues/5591
OriginalL'auteur Nader Dabit