Vos données doivent garder une trace si elles sont sélectionnées ou non. Deux méthodes courantes sont les suivantes: chaque objet de votre tableau prédéfini possède un objet BOOL qui indique s'il est sélectionné ou non, ou vous conservez un second tableau contenant uniquement des références aux objets sélectionnés. Puisque vous êtes limité à trois sélectionnés, la deuxième option pourrait être meilleure.
Lorsque quelqu'un sélectionne une cellule dans votre tableau, vous modifiez le statut de sélection de l'objet associé, soit en changeant son BOOL, soit en l'ajoutant/en le supprimant dans le tableau supplémentaire. C'est aussi l'endroit pour vérifier si vous avez déjà autant de sélections que vous le permettez. Si les sélections ont changé, vous demandez à votre table de recharger les données.
Dans cellForRowAtIndexPath:
, vous vérifiez si l'objet est sélectionné ou non et marquez-le en conséquence.
Cette réponse est un meilleur style de codage. – Dustin
D'accord, pouvez-vous s'il vous plaît expliquer avec un morceau de code comme un exemple? Cela me facilitera la compréhension. Merci –
Il y a un exemple de projet disponible chez Apple qui en fait une version simple. Cherchez-en un appelé ListAdder dans la documentation. –