Comment créer un tableau tel que dans l'application de configuration réseau sur l'iphone?

StackOverflow https://stackoverflow.com/questions/1815729

  •  08-07-2019
  •  | 
  •  

Question

Comment puis-je créer une telle vue Table? Donc, si j'allume le commutateur, 2 cellules doivent être ajoutées.

j'ai déjà essayé

[tableView numberForRowsInSection:6];
[tableView reloadData];

mais cela ne fonctionne pas comme prévu: (

des idées?

La meilleure chose à faire serait 2 sections: la première section contient 5 cellules, la seconde contient une cellule avec un commutateur désactivé et si le commutateur a été modifié, 2 cellules seront ajoutées à la section 2. (Ajouté avec une animation :) )

mhh ..

Merci d'avance, je suis très enthousiaste à chaque réponse:)

Était-ce utile?

La solution

Où avez-vous tiré cette méthode -numberForRowsInSection: ? Autant que je sache (et la documentation), cela n'existe pas et n'a jamais existé en tant que méthode UITableView. Deviner ne vous mènera nulle part et encore moins d'inventer des méthodes à partir de rien.

Peut-être devriez-vous consulter quelques tutoriels qui couvrent les bases de l’utilisation de UITableView avant de tenter ceci. Je doute que quelqu'un prenne le temps de vous écrire un cours complet pour le faire et de le mettre en réponse, et vous serez beaucoup mieux à long terme si vous n'essayez pas simplement de copier / coller du code tu ne comprends pas. Il existe de nombreux documents et exemples couvrant UITableView, et nous ne tenons compte que de ce qui est disponible chez Apple. UITableView est une classe tellement utilisée que Google cherche quelque chose comme "tutoriel UITableView". va vous donner des pages et des pages de résultats.

Je vais vous donner un bref aperçu de ce que vous devez faire, cependant: 1. Bien sûr, vous pouvez commencer avec le modèle UITableViewController dans Xcode et commencer à le personnaliser pour l'adapter à vos besoins ... deux sections, quel que soit le nombre de lignes par section, etc., en déterminant cela en fonction de certains objets de niveau modèle si nécessaire.

  1. Vous devez créer une sous-classe UITableViewCell personnalisée ou personnaliser la présentation UITableViewCell par défaut (au moins en ajoutant une sous-vue UISwitch) lorsque vous créez de nouveaux objets cellule dans tableView: cellForRowAtIndexPath: .

  2. UISwitch doit être configuré pour envoyer un message à votre contrôleur de vue lorsque la valeur du commutateur change avec - [UIControl addTarget: action: forControlEvents:] pour le UIControlEventValueChanged . code> événement.

  3. Dans votre implémentation de la méthode d'action pour ce changement de valeur de commutateur, vous devez implémenter une logique afin de déterminer si des lignes doivent être ajoutées ou soustraites, puis réellement ajouter ou soustraire les lignes. Vous pouvez utiliser beginUpdates / endUpdates , insertRowsAtIndexPaths: withRowAnimation: et deleteRowsAtIndexPaths: withRowAnimation: pour avoir la belle ligne lisse comportement d'animation au lieu d'appeler simplement reloadData .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top