lol*_*lol 21 xcode uidatepicker uitextfield ios
我对iOS很陌生,所以很明显我在尝试按照这个解决方案时缺少一些概念显示datepicker在文本字段上点击 我的问题.
我在一个名为DatepickerAppDelegate的类中有接口和实现,但我在这里丢失了:
"在XIB中,拉出一个UIToolbar和一个UIDatePicker,但不要将它附加到视图.适当地连接插座.dateChanged:响应日期选择器和doneEditing的变化:当工具栏中的完成按钮是点击.连接它们.方法如下所示."
我读了一些关于XIB的东西,但我正在使用故事板,所以我想我没有.此外,我不确定如何在不将其附加到视图控制器的情况下拉出元素(我正在尝试,但是当我释放鼠标按钮时,工具会飞回工具栏),我不知道甚至理解为什么我需要一个UIToolbar.
最后,如何将文本字段连接到datepicker委托?
有人能帮我吗?
更新:
事实上它很简单,我只需要:
datePicker = [[UIDatePicker alloc] init];
datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(datePickerValueChanged:) forControlEvents:UIControlEventValueChanged];
self.birthday.inputView = datePicker;
Run Code Online (Sandbox Code Playgroud)
Dav*_*ong 52
UIResponder,UITextField继承,定义一个名为的属性inputView.此属性(a UIView *)可以定义在成为第一个响应者时将显示的视图而不是键盘UIResponder.
因此,如果您希望UIDatePicker在点击textField时出现(即,您将该textField作为第一个响应者),那么您可以说,天真地:
UIDatePicker *datePicker = [[UIDatePicker alloc] init...];
... configure datePicker ...
[myTextField setInputView:datePicker];
Run Code Online (Sandbox Code Playgroud)
现在,当你UITextField被点击时,UIDatePicker将会提出一个.
你需要做的不仅仅是这个,因为你需要处理不同的方向和不同的习语.
但那是基本的想法.
(如果你想要一个工具栏UIDatePicker,那就是这个inputAccessoryView属性的用途......)
iAn*_*kit 21
在 ViewController.m的viewDidLoad中
- (void)viewDidLoad {
[super viewDidLoad];
UIDatePicker *datePicker = [[UIDatePicker alloc]init];
[datePicker setDate:[NSDate date]];
datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(dateTextField:) forControlEvents:UIControlEventValueChanged];
[txtFieldBranchYear setInputView:datePicker];
}
Run Code Online (Sandbox Code Playgroud)
在ViewController中添加一个方法
-(void) dateTextField:(id)sender
{
UIDatePicker *picker = (UIDatePicker*)txtFieldBranchYear.inputView;
[picker setMaximumDate:[NSDate date]];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
NSDate *eventDate = picker.date;
[dateFormat setDateFormat:@"dd/MM/yyyy"];
NSString *dateString = [dateFormat stringFromDate:eventDate];
txtFieldBranchYear.text = [NSString stringWithFormat:@"%@",dateString];
}
Run Code Online (Sandbox Code Playgroud)
txtFieldBranchYear 是UITextField的出口
| 归档时间: |
|
| 查看次数: |
44684 次 |
| 最近记录: |