UIBarButtonItem在点击时不起作用

时间:2014-02-26 11:40:55

标签: ios triggers xcode5 uibarbuttonitem uitoolbar

我在我的日期选择器上触发我的工具栏按钮时遇到了一些问题。我的日期选择器显示完美但当我点击完成项目按钮时,没有任何附加在日志中。我不知道为什么它不起作用。

任何帮助将不胜感激:)

-(void) dismiss:(id){
  NSLog("test");
}

-(IBAction) datePicker:(id)sender{
  ...
  ...
  UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height, 320, 44)];
  toolBar.tag = 1;
  toolBar.barStyle = UIBarStyleBlackTranslucent;

  UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
  UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dismiss:)];
  [toolBar setItems:[NSArray arrayWithObjects:spacer, doneButton, nil]];
}

1 个答案:

答案 0 :(得分:0)

我终于发现 替代解决方案是使用通过 文本字段喜欢这段代码:

我使用 ARC

UIToolbar *toolBar = [UIToolbar alloc] init];     
UITextField * textfield = [[UITextField alloc]init];
UIDatePicker *datePicker = [[[UIDatePicker alloc] init]];

toolbar.barStyle = UIBarStyleDefault;

datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(datePickerValueChanged:) forControlEvents:UIControlEventValueChanged];

textField.inputView = datePicker;
textfield.inputAccessoryView = toolBar;
[self.view addSubview:textfield];
[textfield becomeFirstResponder];

希望这也适合你。