Comment faire UIActionSheet dans iOS Swift? Voici mon code pour coder UIActionSheet.
@IBAction func downloadSheet(sender: AnyObject)
{
let optionMenu = UIAlertController(title: nil, message: "Choose Option", preferredStyle: .actionSheet)
let saveAction = UIAlertAction(title: "Save", style: .default, handler:
{
(alert: UIAlertAction!) -> Void in
println("Saved")
})
let deleteAction = UIAlertAction(title: "Delete", style: .default, handler:
{
(alert: UIAlertAction!) -> Void in
println("Deleted")
})
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel, handler:
{
(alert: UIAlertAction!) -> Void in
println("Cancelled")
})
optionMenu.addAction(deleteAction)
optionMenu.addAction(saveAction)
optionMenu.addAction(cancelAction)
self.presentViewController(optionMenu, animated: true, completion: nil)
}
J'espère que mon code est clair ... Je suis le bienvenu pour une meilleure suggestion pour ce code.
ios
swift
uiactionsheet
Yu Yu Mon Win
la source
la source
Réponses:
Votre approche est bonne, mais vous pouvez ajouter
UIActionSheet
facilement d'une autre manière.Vous pouvez ajouter
UIActionSheetDelegate
dans UIViewController` commeDéfinissez votre méthode comme,
Vous pouvez obtenir l'index de votre bouton quand il a cliqué comme
Mise à jour 1: pour iOS8 +
la source
Mis à jour pour Swift 4
Fonctionne pour iOS 11
Certaines des autres réponses sont correctes mais j'ai fini par mélanger et assortir quelques-unes d'entre elles pour plutôt arriver à ceci:
Profitez :)
la source
UIActionSheet
est obsolète dans iOS 8.J'utilise ce qui suit:
la source
Mise à jour pour Swift 3:
la source
Mis à jour pour Swift 3.x, Swift 4.x, Swift 5.x
la source
Feuille d'action générique fonctionnant pour Swift 4, 4.2, 5
Si vous aimez une version générique que vous pouvez appeler à partir
ViewController
de chaque projet, essayez celle-ci:Appelez comme ceci dans votre ViewController.
Attention: Vous vous demandez peut-être pourquoi j'ajoute
Action 1/2/3
mais que j'ai obtenu des résultats comme 0,1,2. Dans la ligne,for (index, (title, style)) in actions.enumerated()
j'obtiens l'index des actions. Les tableaux commencent toujours par l'indice 0. La complétion est donc 0,1,2.Si vous souhaitez définir une énumération, un identifiant ou un autre identifiant, je vous recommande de remettre un objet en paramètre
actions
.la source
title: String?
etmessage: String?
peut être facultatifFeuille d'action dans iOS10 avec Swift3.0. Suivez ce lien.
la source
Rapide :
L'exemple de code ci-dessous fonctionne à la fois sur iPhone et iPad.
la source
L'ancienne méthode: UIActionSheet
La nouvelle façon: UIAlertController
la source
Swift 3 Pour afficher UIAlertController depuis UIBarButtonItem sur iPad
la source
swift4 (testé)
la source
SWIFT 4
FONCTIONNE À LA FOIS SUR IPHONE ET IPAD. PERMET ÉGALEMENT LA ROTATION
PAYSAGE
PORTRAIT
Code (testé)
la source
Code pour ajouter des alertes à la feuille d'actions dans swift4
la source
Vous pouvez utiliser le code suivant pour Alert et Actionsheet pour swift4
la source
Utile pour remplir la liste des actions dynamiques et écouter l'action sélectionnée:
la source
Vous pouvez utiliser le code suivant pour ouvrir actionSheet dans Swift
la source