La fonction suivante ci-dessous affiche une alerte si aucune sélectivité n'est effectuée dans UitailView.
Mais je ne veux pas que l'alerte apparaisse lorsque la vue de table n'a pas d'enregistrement. Comment cela peut-il être fait? P>
travail jusqu'à présent: strong> p>
3 Réponses :
Vérifiez d'abord si le tableau source de données n'est pas vide, remplacez dataSourcearray code> avec le nom vrai
Quel que soit l'objet que vous utilisez comme source de données (je suppose que c'est un tableau), vérifiez si cet objet (tableau) a des éléments zéro. Donc, par exemple, quelque chose comme: de cette façon s'il n'y a pas de lignes, vous quittez la fonction, et il ne affiche pas l'alerte. P> P>
// this is one way of checking if the tableView is empty
@IBAction func onTapNextButton(_ sender: UIBarButtonItem) {
if tableView.visibleCells.isEmpty {
//table view is empty: do something
} else {
guard let selectedIndexPaths = tableView.indexPathsForSelectedRows, !selectedIndexPaths.isEmpty else {
//Show Alert here...
let alert = UIAlertController(title: "Alert..!!", message: "You must select atleast 1 row before proceeding.", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
self.present(alert, animated: true, completion: nil)
return
}
}
}
***** Hope you like it *****
Je pense que cela a déjà été répondu à ici . Veuillez ne pas poser la même question deux fois.
Dupliqué possible de message d'alerte d'affichage si bouton est enfoncé lorsque aucune cellule de la TableView n'est sélectionnée