Я пытаюсь настроить изменение на UIView
, когда оно коснулось. Он является подклассом UIView
и имеет свойство BOOL
, которое называется «isSelected».Изменение BOOL при касании UIView
При создании представления мы устанавливаем его в ДА:
self.isSelected = YES;
Когда вид прикосновении следующие трассы:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
if (self.isSelected) {
self.isSelected = NO;
} else if (!self.isSelected) {
self.isSelected = YES;
}
Проблема, кажется, что IsSelected, кажется, всегда был рассматривается как НЕТ, а не ДА. Каков наилучший способ сделать это.
EDIT: Выйти
-(void)setIsSelected:(BOOL)isSelected {
NSLog(@"isselected chaned to: %@",isSelected ? @"Yes" : @"No");
}
FYI - вы можете заменить эти 4 строки на 1: 'self.iSSelected =! Self.isSelected;'. Это приведет к переключению значения. – rmaddy
Спасибо @rmaddy - Я добавил EDIT, который показывает, что я выхожу из изменений в isSelected. Я изменил эти строки на ваше предложение. Я замечаю, что изменение всегда отображается как ДА. Что-то не так? Мне нужно, чтобы это было правильно зарегистрировано, поэтому я могу вызвать другой метод обновления, когда он изменится на YES/NO из этого представления напрямую или когда VC они находятся при обновлении isSelected для них тоже. Спасибо – StuartM
Если вы собираетесь переопределить метод setIsSelected:, это поможет установить значение в методе. – rmaddy