Это работает в Objective-C, потому что отправка сообщений в нулевые указатели действительна и просто ничего не делает.
Если вы не хотите использовать слабый необязательный параметр, вы можете запросить таймер, чтобы убедиться, что он работает, посмотрев на него свойство valid.
Ответ 2
Как насчет опции ниже? Вы можете видеть, работает ли это для вас.