2015-04-20 2 views
0

Я создаю приложение, в котором пользователь может выбрать вариант напоминания. Если напоминание включено, тогда будет активирован UIDatePicker. Я создал основной интерфейс с раскадрой. Так что мой первоначальный пользовательский интерфейс, как этотUIDatePicker, перемещающийся в нижней части окна

enter image description here

Но после выключения и включения снова выключатель напоминания, то Datepicker помещается в верхней части представления. Мне нужно расположить его в нижней части окна.

enter image description here

Мой ViewController код как этот

- (IBAction)isReminderSelected:(UISwitch *)sender { 
    if([_reminderSetField isOn]){ 
    [_reminderSetField.viewForBaselineLayout addSubview: _reminderDatePicker]; 
} 
else { 
    [_reminderDatePicker removeFromSuperview];} 
} 

Я создал основной пользовательский интерфейс с помощью видеоредактора. Затем инициализировать DatePicker в заголовочном файле ....

My * .h файл

@property (strong, nonatomic) IBOutlet UISwitch *reminderSetField; 
    @property (strong, nonatomic) IBOutlet UIDatePicker *reminderDatePicker; 
    - (IBAction)isReminderSelected:(UISwitch *)sender; 
+1

Какие ограничения у вас есть при выборе даты? – rdelmar

+0

У меня нет никаких ограничений. – Reza

+0

вы можете загрузить установочный код выбора даты, который мы не понимаем из этого фрагмента кода. –

ответ

1

Вы должны установить y положение зрения сборщика как

float y = [UIScreen mainScreen].bounds.size.height - _reminderDatePicker.frame.size.height; 

[_reminderDatePicker setFrame:CGRectMake(0, y, _reminderDatePicker.frame.size.width, _reminderDatePicker.frame.size.height)]; 
+0

Не работает. Тем не менее я могу получить DatePicked на том же месте. – Reza

0

я думаю, вы должны попробовать например

- (IBAction)isReminderSelected:(UISwitch *)sender { 
    if([_reminderSetField isOn]){ 
     float y = [UIScreen mainScreen].bounds.size.height - _reminderDatePicker.frame.size.height; 

     [_reminderDatePicker setFrame:CGRectMake(0, y, _reminderDatePicker.frame.size.width, _reminderDatePicker.frame.size.height)]; 
[yourView addSubView:_reminderDatePicker]; 
} 
else { 
     [_reminderDatePicker removeFromSuperview];} 
} 
Смежные вопросы