UIPageControl ne répondent pas à toucher, ne change pas de point
J'ai un UIPageControl. Quand je clique sur un point pour changer de page, rien ne se passe. Deuxième point n'obtient pas mis en évidence.
Il fonctionne très bien, cependant, quand je scroll mon UIScrollView. Dans ce cas, le deuxième point est mis en évidence.
pageControl = [[UIPageControl alloc] init] ;
pageControl.center = CGPointMake(160.0f, 430.0f);
pageControl.numberOfPages=nPages;
pageControl.currentPage=0;
pageControl.hidesForSinglePage = YES;
pageControl.userInteractionEnabled =YES;
[pageControl addTarget:self action:@selector(pageTurn:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:pageControl];
Ce doit être appelée lorsque je de changement de contrôle pagecontrol Valeur, mais il n'est pas appelé car il ne répond pas au toucher.
- (void) pageTurn: (UIPageControl *) aPageControl
{
int whichPage = aPageControl.currentPage;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.3f];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
sv.contentOffset = CGPointMake(320.0f * whichPage, 0.0f);
[UIView commitAnimations];
}
Vous devez vous connecter pour publier un commentaire.
Définir le contrôle pagecontrol de l'image (largeur et hauteur) et pas seulement le centre sinon il n'a pas de dimensions et ne répond pas à la touche.
J'ai eu les mêmes symptômes dans mon application récemment. Ma solution a été de déplacer le
UIPageControl
dans le point de vue de la hiérarchie (z-index, si vous voulez) de sorte qu'il était au-dessus de laUIScrollView
à l'intérieur de la vue racine. Si elle n'est pas au-dessus de laUIScrollView
il ne sera pas en touche, même si on dirait qu'il est visible.Je ne suis pas sûr de savoir si c'est votre problème, mais juste pensé que je voudrais mentionner.
Parfois, il contribue à porter le contrôle pagecontrol à l'avant de toutes les sous-vues.
C'était le Truc dans mon cas:
Parfois, lorsque le contrôle pagecontrol largeur est trop petite, cela peut également se produire. Essayez de définir la largeur de contrôle pagecontrol composant à être assez grande,par exemple, 320. Ensuite, il devrait mieux fonctionner.