Создание 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
и это выражение в целом).
Вам нужно будет использовать ваш двухстрочный подход, который легче читать и, следовательно, поддерживать.