obtenir indexPath de UITableViewCell sur le clic du Bouton de la Cellule
J'ai un bouton (couleur rouge de la croix) dans le UITableViewCell
et sur le clic du bouton je veux obtenir indexPath
de la UITableViewCell
.
Maintenant je suis à l'attribution de la balise pour chaque bouton comme ceci
cell.closeButton.tag = indexPath.section
et le sur cliquez sur le bouton je reçois le indexPath.section
valeur comme ceci:
@IBAction func closeImageButtonPressed(sender: AnyObject) {
data.removeAtIndex(sender.tag)
tableView.reloadData()
}
Est-ce la bonne manière de mise en œuvre ou est-il un autre moyen propre de faire cela?
Par ailleurs, pourquoi êtes-vous de recharger la totalité de la table après la suppression d'un article? Appelez simplement
Ya je peux le faire.
peut-être vous pouvez donner un coup d'oeil sur le thread suivant: stackoverflow.com/a/41629633/387507
avez-vous été en mesure de résoudre le problème?
oui je l'ai fait.
tableView.deleteSections(NSIndexSet(index: sender.tag), withRowAnimation: .None)
à la place.Ya je peux le faire.
peut-être vous pouvez donner un coup d'oeil sur le thread suivant: stackoverflow.com/a/41629633/387507
avez-vous été en mesure de résoudre le problème?
oui je l'ai fait.
OriginalL'auteur Anirudha Mahale | 2016-09-20
Vous devez vous connecter pour publier un commentaire.
Utiliser Des Délégués:
MyCell.swift:
MyViewController.swift:
OriginalL'auteur Bista
Comment obtenir des cellules indexPath pour tapoter le bouton de Swift 4 avec le bouton sélecteur de
OriginalL'auteur Saurabh Kumar Sharma
Vous pouvez également obtenir
NSIndexPath
deCGPoint
de cette façon:CGPointZero
est un point constant avec emplacement (0,0). Le point zéro est équivalent àCGPointMake(0,0)
. Et il vous permet de convertir votre buttonPosition à indexpath.OriginalL'auteur Bhavin Ramani
Créer une classe personnalisée de UIButton et de déclarer un stockées propriété comme cela et l'utiliser pour récupérer attribué indexPath de callFroRowAtIndexPath.
C'est la solution à toute épreuve que votre indexPath ne sera jamais de mal, en tout condition. Essayer une fois.
OriginalL'auteur Mahesh Agrawal
Voici un exemple complet qui répondra à votre question.
OriginalL'auteur Sam Ngugi
Dans votre cellForRow:
Ici val est votre indexPath objet, vous pouvez passer n'importe quel objet comme vous pouvez affecter passer de la cellule de l'objet et de l'obtenir dans l'action du bouton.
OriginalL'auteur
essayez ceci:
cette fonction obtenir la position de la ligne sur
OriginalL'auteur Prashant Sharma
Dans Swift 4 , il suffit d'utiliser cette:
func buttonTapped(_ expéditeur: UIButton) {
}
OriginalL'auteur DEEPAK KUMAR
Essayer avec la meilleure utilisation de swift fermetures : Simple, Rapide & Facile.
Dans cellForRowAtIndexPath méthode:
Sélecteur de Méthode pour l'usage externe de cellForRowAtIndexPath méthode:
Extension pour UIButton :
OriginalL'auteur Mushrankhan