Reputation: 139
I have a UIDatePicker and I want to hide and show on UIButton Click .
For this I am using BOOL variable isTouchFirst.but it hide and show on second event of button.
Please resolve this problem.And also check first it work on double click event.
if(isTouchFirst){
isTouchFirst=NO;
self. DatePicker.hidden=NO;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
_DatePicker.datePickerMode = UIDatePickerModeDate;
formatedDate=[[NSString alloc]init];
formatedDate = [dateFormatter stringFromDate:self.DatePicker.date];
self.SelectedDate.text =formatedDate;
[DatePicker setMinimumDate: [NSDate date]];
_goDateForcustmoeDetail=formatedDate;
}
else {
isTouchFirst=YES;
self. DatePicker.hidden=YES;
}
Upvotes: 2
Views: 1878
Reputation: 126
Make it hidden = YES
by default
- (void)buttonTapped:(UIButton *)sender {
sender.selected = !sender.selected;
datePicker.hidden = !sender.selected;
}
Upvotes: 0
Reputation: 13025
BOOL datePickerHidden;
- (void)viewDidLoad
{
[super viewDidLoad];
datePickerHidden = YES;
// _datePicker = [UIDatePicker alloc...
[_datePicker setHidden: datePickerHidden];
// UIButton *dateHiddenSwitchBtn = [UIButton alloc...
dateHiddenSwitchBtn addTarget:self action:@selector(switchDatePickerHidden) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:dateHiddenSwitchBtn];
}
- (void)switchDatePickerHidden
{
if (datePickerHidden) datePickerHidden = NO;
else datePickerHidden = YES;
[_datePicker setHidden: datePickerHidden];
}
Upvotes: 1