comment "couper" une UIview en 2 ?

macounettemacounette Membre
17:31 modifié dans API UIKit #1
Bonjour !

Je cherche un moyen de "reproduire" l'effet du Page Control du Springboard. Vous savez les petits points qui permettent de slider d'une vue à  l'autre.

Je voudrais dans une vue (un écran), avoir une partie de la vue qui bouge et avoir l'autre partie qui reste statique. Un peu comme si j'avais 2 frames dans ma vue en fait.

Je n'arrive pas à  trouver un moyen de couper ma vue en 2 .

Pour rentrer dans les détails : dans ma partie haute, j'affiche des balles qui rebondissent. Dans ma partie basse, j'affiche aussi des balles mais pas de la même façon.

J'ai essayé en faisant 2 UIViews dans une UIView, en faisant des addsubviews dans la UIView "mère" mais ça fait bugger mon animation (peut-être parce que chacune des UIviews filles possèdent son propre timer ?)

Grrr je ne sais pas. Je n'y arrive pas  :-\\

Réponses

  • Philippe49Philippe49 Membre
    17:31 modifié #2
    dans 1237232125:

    Je cherche un moyen de "reproduire" l'effet du Page Control du Springboard. Vous savez les petits points qui permettent de slider d'une vue à  l'autre.

    Voir l'exemple PageControl de la doc
  • macounettemacounette Membre
    17:31 modifié #3
    En fait ça n'avait rien à  voir avec PageControl...

    J'avais dans ma vue mère :
    <br />&nbsp; &nbsp; &nbsp;  CGRect frame = CGRectMake(0, 0, 320, 391);<br />	BallView *ballView = [[[BallView alloc]&nbsp; initWithFrame:frame:1:0:0:391] autorelease];<br />	[self.view addSubview: ballView]; //j&#39;ajoute ma première vue fille en haut de l&#39;écran<br /><br />&nbsp; &nbsp; &nbsp; CGRect frame2 = CGRectMake(0, 391, 320, 69);<br />	BallView *ballView2 = [[[BallView alloc]&nbsp; initWithFrame:frame2:1:1:391:69] autorelease];<br />	[self.view addSubview: ballView2]; //j&#39;ajoute ma seconde vue fille en bas de l&#39;écran<br />
    


    Ce code me faisait bugger mon animation jusqu'à  maintenant et là  en rajoutant un ballView.backgroundColor= [ UIColor yellowColor ] et ballView2.backgroundColor= [ UIColor redColor ] avant les addsubview respectifs, ça marche beaucoup mieux.

    Bon je suis contente parce que du coup ça marche, mais ben j'ai pas franchement compris pourquoi le backgroundColor me change la vie... o:)
    L'essentiel c'est que ça marche hein ?


  • GreensourceGreensource Membre
    17:31 modifié #4
    C'est toujours plus intéressant d savoir pourquoi ça marche pas, mais tu as raison au moins ça marche  :P

    J'avais pensez comme toi au début Philippe mais là  en fait je ne crois pas que ce soit de slidder d'une vue à  l'autre qui l'intéresse mais juste de splitter son écran en deux vue.

    Juste une question, tu affiches dans deux vue différente le même modèle de donnée ou bien ce sont deux modèle et tes deux vue servent à  les comparer? En gros je suis curieux et je me demandais ce que tu faisais  :)
  • Philippe49Philippe49 Membre
    17:31 modifié #5
    dans 1237233682:

    Ce code me faisait bugger mon animation jusqu'à  maintenant et là  en rajoutant un ballView.backgroundColor= [ UIColor yellowColor ] et ballView2.backgroundColor= [ UIColor redColor ] avant les addsubview respectifs, ça marche beaucoup mieux.

    Bon je suis contente parce que du coup ça marche, mais ben j'ai pas franchement compris pourquoi le backgroundColor me change la vie...


    Il doit y avoir quelque chose de mal écrit dans le code de la classe BallView concernant le champ backgroundColor (genre backgroundColor vaut nil, ou pointe vers un objet qui n'a rien d'une UIColor).
  • macounettemacounette Membre
    17:31 modifié #6
    dans 1237235804:

    Juste une question, tu affiches dans deux vue différente le même modèle de donnée ou bien ce sont deux modèle et tes deux vue servent à  les comparer? En gros je suis curieux et je me demandais ce que tu faisais  :)


    Non j'affiche 2 vues avec des balles qui s'animent différemment dans chaque vue.
Connectez-vous ou Inscrivez-vous pour répondre.