Создание NSShadow делает ошибку

Я делаю белую тень в Objective-C и использую код

NSShadow *myShadow = [[NSShadow alloc]init];
[myShadow setShadowColor: [UIColor whiteColor]];

и, кажется, работает нормально, но когда я пытаюсь сократить его до

NSShadow *myShadow = [[[NSShadow alloc]init] setShadowColor: [UIColor whiteColor]];

Я получаю сообщение об ошибке "Инициализация 'NSShadow *__strong' выражением несовместимого типа 'void'" Кто-нибудь знает, что здесь происходит?

1 ответ

Решение

Происходит то, что компилятору не нравится переменная типа NSShadow * быть назначенным void (возвращаемый тип setShadowColor и это выражение в целом).

Вам нужно будет использовать ваш двухстрочный подход, который легче читать и, следовательно, поддерживать.

Другие вопросы по тегам