UIDate Picker 上带有栏按钮的可调整大小的工具栏

Resizable Toolbar with bar button on UIDate Picker

我在 keypad.And UI 栏按钮的位置使用了日期选择器,带有确定、取消和灵活 space。 但是当我将纵向模式更改为横向模式时它没有响应。

工具栏:-

UIToolbar *toolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 50)];
    toolbar.barStyle=UIBarStyleBlackTranslucent;


    cancelBtn=[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:nil];
    flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
    doneBtn = [[UIBarButtonItem alloc]initWithTitle:@"OK"style:UIBarButtonItemStyleDone target:self action:nil];

    [toolbar setItems:[NSArray arrayWithObjects:cancelBtn,flexible,doneBtn,nil]];


     [toolbar sizeToFit];
    _txt_dob.inputAccessoryView=datePicker;

UI日期选择器:-

datePicker = [[UIDatePicker alloc] init];
    datePicker.datePickerMode = UIDatePickerModeDate;
    [_txt_dob setInputView:datePicker];
    [datePicker addSubview:toolbar];

模拟器的横向模式。

不要使用框架初始化您的 UIToolBar。而是在 UIToolBar 和它的父视图之间使用 NSLayoutConstraint 来一直拉伸它。这样它就能很好地响应方向变化。