[英]UIBarButtonItem on UIDatePicker as inputView not clickable
當您單擊dateTextField
,它顯示datePicker
與toolBar
。
我將doneButton
添加到toolBar
,但doneButton
不可點擊。
我如何解決它?
@property (nonatomic, retain) UIDatePicker* datePicker;
@property (nonatomic, retain) UIToolBar* toolBar;
@property (nonatomic, retain) UITextField* dateTextField;
self.datePicker = [[UIDatePicker alloc]init];
self.datePicker.datePickerMode = UIDatePickerModeTime;
self.toolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, -40, 320, 40)];
[self.datePicker addSubview:self.toolBar];
UIBarButtonItem* doneButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(closePicker)];
NSArray* barItems = [NSArray arrayWithObjects:doneButton, nil];
[self.toolBar setItems:barItems animated:YES];
self.dateTextField = [[UITextField alloc]initWithFrame:CGRectMake(90, 5, 100, 25)];
self.dateTextField.delegate = self;
self.dateTextField.inputView = self.datePicker;
[self.view addSubview:self.dateTextField];
謝謝。
不要將工具欄添加為日期選擇器的子視圖。 而是將dateTextField的inputAccessoryView屬性設置為工具欄(工具欄具有普通框架)。 像這樣:
@property (nonatomic, retain) UIDatePicker* datePicker;
@property (nonatomic, retain) UIToolBar* toolBar;
@property (nonatomic, retain) UITextField* dateTextField;
self.datePicker = [[UIDatePicker alloc]init];
self.datePicker.datePickerMode = UIDatePickerModeTime;
self.toolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
UIBarButtonItem* doneButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(closePicker)];
NSArray* barItems = [NSArray arrayWithObjects:doneButton, nil];
[self.toolBar setItems:barItems animated:YES];
self.dateTextField = [[UITextField alloc]initWithFrame:CGRectMake(90, 5, 100, 25)];
self.dateTextField.delegate = self;
self.dateTextField.inputView = self.datePicker;
self.dateTextField.inputAccessoryView = self.toolbar;
[self.view addSubview:self.dateTextField];
另請參閱這篇Apple文章以了解更多信息:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.