inputAccessoryView 无法正常工作或格式化
inputAccessoryView not working or formatting properly
我正在设置 datepicker
来代替 UITextField
和 UIToolbar
的键盘。我希望能够关闭 accessoryView
,但它没有正常运行。虽然我按下了 Done 按钮,但没有调用操作方法,工具栏格式也不是我想要的颜色。
[UIColor defaultAppColor]
应该是红色阴影,但它没有出现在任何地方。
我做错了什么?
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectZero];
datePicker.datePickerMode = UIDatePickerModeDate;
datePicker.backgroundColor = [UIColor universalGreyColor];
UIToolbar *dobToolbar = [[UIToolbar alloc] init];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(dateSelected:)];
doneButton.tintColor = [UIColor universalActionColor];
UIBarButtonItem *flexibleSeparator = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
dobToolbar.items = @[flexibleSeparator, doneButton];
dobToolbar.barTintColor = [UIColor colorWithWhite:33.0/255.0 alpha:1];
dobToolbar.backgroundColor = [UIColor defaultAppColor];
[dobToolbar setShadowImage:[UIImage new] forToolbarPosition:UIToolbarPositionAny];
//dobToolbar.barStyle = UIBarStyleDefault;
self.dob.inputAccessoryView = dobToolbar;
self.dob.inputView = datePicker;
我相信此时您的工具栏可能没有框架。尝试添加:
[dobToolbar sizeToFit];
这应该会让您的栏按钮开始工作。
如果您希望工具栏为 defaultAppColor
,请尝试将其设置为 barTintColor
属性,而不是 backgroundColor
。
我正在设置 datepicker
来代替 UITextField
和 UIToolbar
的键盘。我希望能够关闭 accessoryView
,但它没有正常运行。虽然我按下了 Done 按钮,但没有调用操作方法,工具栏格式也不是我想要的颜色。
[UIColor defaultAppColor]
应该是红色阴影,但它没有出现在任何地方。
我做错了什么?
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectZero];
datePicker.datePickerMode = UIDatePickerModeDate;
datePicker.backgroundColor = [UIColor universalGreyColor];
UIToolbar *dobToolbar = [[UIToolbar alloc] init];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(dateSelected:)];
doneButton.tintColor = [UIColor universalActionColor];
UIBarButtonItem *flexibleSeparator = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
dobToolbar.items = @[flexibleSeparator, doneButton];
dobToolbar.barTintColor = [UIColor colorWithWhite:33.0/255.0 alpha:1];
dobToolbar.backgroundColor = [UIColor defaultAppColor];
[dobToolbar setShadowImage:[UIImage new] forToolbarPosition:UIToolbarPositionAny];
//dobToolbar.barStyle = UIBarStyleDefault;
self.dob.inputAccessoryView = dobToolbar;
self.dob.inputView = datePicker;
我相信此时您的工具栏可能没有框架。尝试添加:
[dobToolbar sizeToFit];
这应该会让您的栏按钮开始工作。
如果您希望工具栏为 defaultAppColor
,请尝试将其设置为 barTintColor
属性,而不是 backgroundColor
。