UIScrollview avec UIButtons - comment recréer tremplin?

Je suis en train de créer un tremplin-comme l'interface au sein de mon application. Je suis en train d'utiliser UIButtons ajouté à un UIScrollView. Le problème, je suis en cours d'exécution pour est avec les boutons de ne pas passer n'importe quelle touche à l'UIScrollView - si j'essaie de film/diapositive et appuyez sur le bouton, il ne veut pas s'inscrire pour le UIScrollView, mais si j'ai faites glisser vers l'espace entre les boutons, il va fonctionner. Les boutons de la souris/du travail si je les touche.

Est-il un bien ou un réglage des forces sur le bouton pour envoyer les événements tactiles jusqu'à son parent (superview)? Les boutons doivent être ajoutés à autre chose avant d'être ajoutés à la UIScrollView?

Voici mon code:

//init scrolling area
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 480, 480)];
scrollView.contentSize = CGSizeMake(480, 1000);
scrollView.bounces = NO;
scrollView.delaysContentTouches = NO;

//create background image
UIImageView *rowsBackground = [[UIImageView alloc] initWithImage:[self scaleAndRotateImage:[UIImage imageNamed:@"mylongbackground.png"]]];
rowsBackground.userInteractionEnabled = YES;

//create button
UIButton *btn = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
btn.frame = CGRectMake(100, 850, 150, 150);
btn.bounds = CGRectMake(0, 0, 150.0, 150.0);
[btn setImage:[self scaleAndRotateImage:[UIImage imageNamed:@"basicbutton.png"]] forState:UIControlStateNormal];
[btn addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];

//add "stuff" to scrolling area
[scrollView addSubview:rowsBackground];
[scrollView addSubview:btn];

//add scrolling area to cocos2d
//this is just a UIWindow
[[[Director sharedDirector] openGLView] addSubview:scrollView];

//mem-mgmt
[rowsBackground release];
[btn release];
[scrollView release];
  • Il convient de noter que, même si Apple a permis à avant de, 10.4 Apps that create alternate desktop/home screen environments or simulate multi-App widget experiences will be rejected. Juste au cas où certains nouveaux arrivants ont été la planification d'un navire de production application qui dispose de sa propre tremplin.
InformationsquelleAutor Patrick | 2009-03-16