Récupérer toutes les vues

groumpfgroumpf Membre
18:41 modifié dans API AppKit #1
est-ce que c'est possible à  partir d'un NSView de récupérer toutes les vues qu'il contient quelque soit l'imbrication hierarchique ?
J'ai l'impression que "subviews" ne reste qu'au premier niveau.

Je voudrais recuperer les NSView, tester la classe et si c'est une certaine classe, faire un traitement particulier.

Réponses

  • 18:41 modifié #2
    En prenant une vue, tu as d'office toutes les sous-vues, car les sous-vues sont comme des variables d'instance de la vue principale. subviews ne reprend effectivement que le premier niveaux, mais il contient des vues qui répondent également à  subviews.

    Sinon un bon truc est de mettre un tag aux sous-vues que tu veux tester. Puis tu fais [tt][myView subviewWithTag:tag];[/tt] et tu récupères la sous-vue qui t'intéresse, quelle que soit sa place dans la hiérarchie.
  • groumpfgroumpf Membre
    18:41 modifié #3
    d'accord donc il faut se faire la fonction qui va parcourir toutes les sous-vues et ajouter chaque vue dans un NSArray, ok

    J'utilise aussi les tags mais comme je n'ai pas la liste complete des tags (c'est peut-etre ca le pb !), je voulais passer par la liste des vues.
Connectez-vous ou Inscrivez-vous pour répondre.