我已经研究了这个话题死亡,发现有人发帖对一些网站,包括权完全一样的问题,这里的计算器.
我已经尝试了所有的建议但是无法让UIDatePicker实际显示.我采取什么方法似乎并不重要.我尝试使用继承模型,我继承UITextBox控件并覆盖它的默认方法以显示UIDatePicker然后我确保在StoryBoard中我将我的UITextView控件的类设置为该自定义类.我已尝试以编程方式生成UIDatePicker,并尝试将其拖到StoryBoard中的视图上.当我尝试编程方法时,没有显示任何内容,当我尝试将其拖到StoryBoard上时,它总是会显示.当我将它的属性设置为"隐藏"时,它会隐藏但是当我尝试将代码添加到textboxDidBeginEditing应取消隐藏的方法时,我无法显示它.我确保将UITextView的inputView属性设置为等于我的UIDatePicker控件.
什么都行不通!我不明白为什么Apple不只是将UIDatePicker作为UITextView控件的Attributes Inspector下拉列表中的默认选项之一.这会让这更容易.
下面是我的实现类文件中的一些代码.
#import "AddTasksViewController.h"
@implementation AddTasksViewController
@synthesize dueDate;
@synthesize description;
@synthesize shortTitle;
@synthesize datePicker;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
self.dueDate.inputView = datePicker;
}
return self;
}
- (IBAction)dueDateDidBeginEditing:(UITextView *)textField
{
[textField resignFirstResponder];
[datePicker setFrame:CGRectMake(0,200,320,120)];
[datePicker addTarget:self action:@selector(done) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:datePicker];
}
Run Code Online (Sandbox Code Playgroud)
这是我的头文件的样子......
#import <UIKit/UIKit.h>
@interface AddTasksViewController : UIViewController
@property (nonatomic, copy) IBOutlet UITextView *dueDate;
@property (nonatomic, copy) IBOutlet UITextView *description;
@property …Run Code Online (Sandbox Code Playgroud)