Objective-C mise en œuvre d'un UIPickerView avec un bouton “Terminé”
Je suis en train de mettre en œuvre un bouton "Terminé" dans un UIPickerView Similaire à celle en vertu de la présente lien
J'ai regardé dans la classe de référence, mais je ne pouvais t trouver
Grâce
OriginalL'auteur user1051935 | 2012-05-22
Vous devez vous connecter pour publier un commentaire.
J'ai ajouté un UIToolbar avec un UIBarButtonItem pour le bouton "terminer" dans mon xib avec le cadre fixé de sorte qu'il n'est pas initialement visible (valeur de y est égale à la hauteur de la vue parent).
Chaque fois que l'utilisateur d'accéder au sélecteur, j'ai changé l'image (la valeur de y) de la UIDatePicker et la UIToolbar avec une animation afin qu'elle glisse le long de avec le sélecteur du bas de l'écran semblable au clavier.
Vérifier mon code ci-dessous.
OriginalL'auteur Jiho Kang
La façon la plus simple de le faire est de modèle dans Interface Builder. C'est un
UIView
contenant unUIToolbar
et unUIPickerView
.Puis créer un débouché pour les
UIView
et le brancher.Si vous avez alors un
UITextField
vous pouvez affecter votre vue personnalisée à sesinputView
propriété.Alternativement, vous pouvez ajouter le sélecteur à votre vue principale...
... et ensuite utiliser cette méthode pour afficher ou masquer le sélecteur.
Je pense que c'est celui-ci: github.com/chriskempson/tomorrow-theme/tree/master/Xcode%204
OriginalL'auteur Paul Hunter
J'ai créer une classe personnalisée, cette prise en charge de multiples orientation:
DateTimePicker.h
DateTimePicker.m
À l'aide de la vue personnalisée dans votre vue-contrôleur:
Espère que cette aide. 🙂
#import <UIKit/UIKit.h> #import "DateTimePicker.h" @interface ViewController : UIViewController { DateTimePicker *dateTimePicker; }
OriginalL'auteur thanhbinh84
Il y a une solution plus élégante. Je ne sais pas si c'est récent (iOS7), mais cela a été de travailler pour moi magnifiquement.
TJDatePicker.h
TJDatePicker.m
Puis à la mise en œuvre du temps...
La clé ici est d'utiliser le
inputAccessoryView
de laUITextField
que vous prévoyez sur le réglage de laUIDatePicker
.OriginalL'auteur jakenberg
Vous obtenez le bouton "Terminé" dans la barre d'outils à l'aide de la ActionSheetPicker. Son est une excellente alternative à la construction elle-même.
https://github.com/skywinder/ActionSheetPicker-3.0
S'il vous plaît aidez-moi à comprendre comment il n'est pas sympathique? Je suis venu sur cette question de chercher une réponse, et trouve la meilleure réponse pour moi était d'utiliser la bibliothèque. Pourquoi quelqu'un d'autre pas aussi de savoir cela?
OriginalL'auteur Chris Woolfe
Succès! Ok, je n'aurais jamais suggérer de faire cela, mais voici où le bouton est créé dans votre tutoriel, notamment le code:
En regardant la table de montage séquentiel, nous pouvons voir que lorsque vous cliquez sur le "Rôle" de "AddPersonTVC.h" de la classe en haut à droite de la table de montage), il apparaît une classe appelée "RollPickerTVCell.h"
À la recherche dans RollPickerTVCell.h, nous remarquons que l'ensemble de la classe est une sous-classe de "CoreDataTableViewCell"
À la recherche à la classe "CoreDataTableViewCell.m", nous avons enfin trouver notre uibarbuttonitem!
OriginalL'auteur Highrule
Dans le cas où vous travaillez sur une Vue de la Table de la Cellule et vous n'êtes pas à l'aide d'un objet UITextField (donc vous ne serez pas à l'aide de l'Accessoire de Vue), voici ce que j'ai fait:
J'ai créé une vue de la table de la cellule appelé
GWDatePickerCell
qui ressemble à ceci (no .plume fichiers concernés).GWDatePickerCell.h
:GWDatePickerCell.m
:Maintenant tout ce que j'avais à faire lors de la création de cellules dans le Tableau: les
@selector
pour le bouton Terminé.heightForRowAtIndexPath
OriginalL'auteur maggix