Хорошо, это странная проблема ... вместо того, чтобы публиковать много кода, я выложу несколько фрагментов, которые объяснят:
Это лист действий, в который я добавил UIDatePicker
в моем .h файле
NSInteger tagOfDateToUse;
в моем файле .m я проверяю его чистоту на ViewDidLoad
tagOfDateToUse = 0;
Мне нужна эта переменная, потому что на экране есть несколько текстовых полей, которые могут вызывать этот лист действий. Поэтому я установил это значение int так, что если его значение равно 100, оно перейдет в одно текстовое поле, если его значение равно 101, оно перейдет к другому
.
Я установил tagOfDateToUse в IBAction. Тогда в
(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
... Делай некоторые вещи
Он отлично работает с 1-й (100), но когда я нажимаю вторую кнопку, это 101 к этому моменту.
Как только он достигает if, tagOfDateToUse равен _ _, он думает, что это 100, когда до этого момента было 101 ... что в операторе if заставляет его вернуться к 100. .. Чего мне здесь не хватает ...
if (tagOfDateToUse = 100) {vacation_starton.text = [[NSString alloc] initWithFormat:@"%@", [formatter stringFromDate:selectedDate]];
}
else if (tagOfDateToUse = 101)
{
vacation_endon.text = [[NSString alloc] initWithFormat:@"%@", [formatter stringFromDate:selectedDate]];
}
Спасибо!