[[self.view.window subviews] makeObjectsPerformSelector:@selector(setUserInteractionEnabled:) withObject:[NSNumber numberWithBool:NO]];
Я видел этот код в ответе на другой вопрос ( Как отключить сенсорный ввод для всех представлений, кроме самого верхнего представления? ) и меня удивило, когда это сработало, поскольку
setUserInteractionEnabled:
ожидает BOOL (который, поскольку это не объект objective-c, не может быть передан в методах типаperformSelector: withObject:
).Где находится документация, в которой говорится, что передача NSNumber - это нормально? Работает ли она для всех методов или требуется специальная реализация? И работает ли она только с BOOL, или это можно сделать с такими типами, как
int
?