Je veux envoyer des données entre UitailViewCell et UIViewController
J'ai une liste d'adresse, dans ma cellule, j'ai un bouton (édition) et je souhaite envoyer toutes les informations sur l'adresse de la cellule p> < Pré> xxx pré>
méthode ne remplace aucune méthode de sa superclasse p> p>
3 Réponses :
Utilisez SEGUE à l'intérieur de votre contrôleur qui contient la TableView qui utilise votre UitailViewCell
Vous devez le faire à partir de votre supposant que vous avez un tableau pour remplir votre puisque vous devez appeler votre fonction à partir d'une action déclenchée par un bouton de votre uiviewcontroller code> dans lequel le
utableviewcell code> est implémenté:
utableview code >, le code serait quelque chose comme: p>
uableviewcell code>, vous Peut implémenter un protocole sur votre cellule: P>
extension FirstViewController: YourTableViewCellDelegate {
func selectedAddress(address: String) {
// Do stuff with the selected address
}
}
J'ai besoin de le faire lorsque l'utilisateur clique sur le bouton à la place de l'utilisateur sélectionnant la ligne
Pour réussir les données de la classe de cellules à la classe de contrôleur Utilisez des méthodes de délégation sur Modifier l'action. strong> p>
Définir la méthode de déléguée de rappel dans UitailViewCell Classe: P>
var rappel: ((NSDictionary) -> (vide))?
Utilisez DS selon vos besoins. P> li>
sur Modifier l'action Appelez la méthode déléguée et transmettez les données p>
@ibaction Func EditAction (_ Sender: n'importe quel) {
rappel? (Dictionnaire)
} p> li>
dans CellforatRat IndexPath Call Délégué Méthode avec objet cellulaire P>
Cell.Callback = {(CurrentData: Nsdictionary)
dans
// Effectuer une action sur les données
} p> li>
ul>
Définir SetData (Dictionnaire) dans la classe de cellules P> li>
dans le contrôleur de vue p>
FUNC TABLEVIEW (_ TableView: UitailView, CellforatRed IndexPath: IndustryPath) -> UitailViewCell {
Laissez Cell = TableViewOutlet.DequeuereAsablecell (WithIdidInder: "Cellname", pour: IndexPath) Comme! CellClassName
cell.setdata (dict)
rapprocher
} p> li>
ul>
Ne fais pas ça. Toutes les informations sur l'adresse i> sont également disponibles dans le modèle B> et la SEGUE doit être effectuée dans le contrôleur B>