Vous voulez trouver un moyen de permuter les 5 contrôleurs de vue? il peut être utile d'utiliser la propriété des nombres premiers.
cela dépend du nombre de permutations que vous voulez. mais puisqu'il n'y a que 5 contrôleurs de vue, il ne peut y avoir plus de 5! = 120 permutations ce qui est bien sur 5 est que c'est un nombre premier
donc si vous calculez (n * a)% 5, où a est un nombre constant de 0 à 4, et n est une variable de 1 à 5 vous obtenez une table comme ceci:
a==0, 0,0,0,0,0
a==1, 1,2,3,4,0
a==2, 2,4,1,3,0
a==3, 3,1,4,2,0
a==4, 4,3,2,1,0
comme vous l'avez vu, c'est 5 permutations complètement différentes, où chaque numéro apparaît exactement une fois.
donc, si vous voulez avoir 120 permutations
appliquer juste un nombre const b (de 0 à 4), et calculer (n * a + b)% 5
vous obtiendrez 5 fois le résultat précédent, qui est 125, mais il y a quelques répétitions, alors le résultat final sera de 120 permutations.
donc, la seule chose que vous avez à faire est de déterminer a et b avec votre condition
et appliquer le code suivant:
int result = (n*a + b)%5;
static UIView *addedView = nil;
if(addedView != nil)
[addedView removeFromSuperview];
switch(result)
{
case 0:
[self.scrollView addSubview:VCA.view];
addedView = VCA.view;
break;
case 1:
[self.scrollView addSubview:VCB.view];
addedView = VCB.view;
break;
//and so on...
}
hope it helps
quelles données vous montrerez dans la vue-contrôleurs? ? – mayuur
Une vue de table est commune .. Certains auront des contrôles et des boutons supplémentaires segmentés .. cela aurait-il de l'importance? – Prathiba
oui, je veux dire que si les données sont assez similaires entre les différentes vues, il suffit d'utiliser cinq UIViews au lieu de UIViewControllers. – mayuur