Création des vue par code et réception des events

GreensourceGreensource Membre
00:38 modifié dans API UIKit #1
Coucou! J'ai besoin de mettre en place mes vues par programmation, sans IB (sauf pour la window principale).
En gros j'ai une scrollView sur la window, une grande vue dans la scrollView et plein de petites vues dans ma grande vue.

Question: ai-je besoin de faire quelques choses pour que les Touch soit pris en compte?
Parce là  mon interface ne réagit pas du tout, à  par le scroll.
A priori toute mes petites vues (qui sont des UIButton) sont en haut de la chaine de responsabilité et je leur ai bien mis un target-action. Sauf que l'action n'est jamais appelé.
J'ai aussi mis des touchBegan dans tout mes controllers mais il ne sont jamais appelé non plus.

Any idea?

Réponses

  • yoannyoann Membre
    00:38 modifié #2
    Si tu peut met ton code pour voir comment tu charge tes différentes vues

    A noter que si tu n'aime pas te prendre la tête à  faire tout par code, tu peut le faire dans un autre .xib et le charger quand tu en a besoin
  • GreensourceGreensource Membre
    00:38 modifié #3
    Je n'ai pas le choix, mes petites vue sont très très personnalisé.
    Pour mon code, il est un peu particulier. J'ai une classe sui se charge d'initialiser tout mes objets grâce à  un PList.

    J'ai en gros une classe GWBoard qui contient un ensemble de case. Normalement ça respect bien MVC, la GWBoardView contient tout les GWCaseView, idem pour le controller et le Model.
    Mes GWCaseView sont des UIButtons. Et je dessine avec CoreGraphics.

    [edit: le projet est trop gros pour etre uploader ici, je dois partir je vais essayer de trouver une autre solution, merci]
  • AliGatorAliGator Membre, Modérateur
    00:38 modifié #4
    propriétés userInteractionEnabled de tes vues qui sont à  NO
  • GreensourceGreensource Membre
    00:38 modifié #5
    Exact, c'était bien ça. Je pensais que c'était à  YES par défaut cette property. C'est un peu bizarre je trouve.

    Merci
Connectez-vous ou Inscrivez-vous pour répondre.