Swift UIDatePicker pour le champ de texte de saisie - comment faire UIDatePicker disparaître?
C'est ma première tentative à Swift ou une application iPhone, donc inutile de dire que je ne suis pas sûr de la façon de faire beaucoup de choses à ce point.
Droit maintenant, j'ai une vue contrôleur avec un champ de texte et un bouton. J'ai réussi à trouver un exemple de code pour presque accomplir ce dont j'ai besoin. Je voudrais faire la chose suivante:
- Quand je clique dans le champ de texte ont une UIDatePicker venir sur l'écran.
- Définir la UIDate sélecteur pour afficher l'heure uniquement - ne pas un jour.
- Mettre sélectionnés UIDatePicker temps dans le textfield.
- Ont la UIDatePicker aller loin quand je clique sur le bouton.
1 à 3 est de travail. Mais je ne peux pas comprendre comment le UIDatePicker en aller et revenir toujours sur l'écran si je clique dans le champ de texte à nouveau.
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var dateField: UITextField!
@IBAction func dateField(sender: UITextField) {
var datePickerView : UIDatePicker = UIDatePicker()
datePickerView.datePickerMode = UIDatePickerMode.Time
sender.inputView = datePickerView
datePickerView.addTarget(self, action: Selector("handleDatePicker:"), forControlEvents: UIControlEvents.ValueChanged)
}
@IBAction func DoneButton(sender: UIButton) {
//How to make datepicker disappear???
}
func handleDatePicker(sender: UIDatePicker) {
var timeFormatter = NSDateFormatter()
timeFormatter.dateStyle = .NoStyle
timeFormatter.timeStyle = .ShortStyle
dateField.text = timeFormatter.stringFromDate(sender.date)
}
override func viewDidLoad() {
super.viewDidLoad()
//Do any additional setup after loading the view, typically from a nib.
}
}
Votre code m'a aidé à trier mon datepicker.. merci!
MGann howd vous faites en sorte qu'une fois que le champ est cliqué sur le clavier ne marche pas, mais le DatePicker merci
MGann howd vous faites en sorte qu'une fois que le champ est cliqué sur le clavier ne marche pas, mais le DatePicker merci
OriginalL'auteur MGann | 2014-11-18
Vous devez vous connecter pour publier un commentaire.
Vous appelez
resignFirstResponder
sur le champ de texte:Aussi, ce n'est pas une excellente idée d'avoir une méthode et une propriété du même nom - pas sûr au sujet de la préséance là, mais les chances sont, il peut être source de confusion à un certain point.
OriginalL'auteur Nate Cook
Vous pouvez essayer quelque chose comme
gestureRecognizer
pour faire de la UIDatePicker disparaître:C'est ce que j'utilise dans mon application lorsque l'utilisateur appuie sur n'importe où sur l'écran, le UIDatePicker s'en va!
OriginalL'auteur Akhtar Uz Zaman
Vous pouvez aussi créer un débouché pour le datePicker.
@IBOutlet faible var datePicker: UIPickerView!
puis dans votre fonction
OriginalL'auteur Edrick Pascual