Как я могу решить эту ошибку: «Ожидаемый идентификатор» - PullRequest
0 голосов
/ 19 октября 2011

Я хочу нарисовать два изображения в UINavigationBar. Первый @ "cabecera.png" - это фон, а второй, @ "c_portada.png" - значок, который должен быть над фоном. Я пытаюсь нарисовать изображения с помощью метода drawInRect, но я получаю ошибку «Ожидаемый идентификатор», когда пытаюсь нарисовать второе изображение, почему?

@implementation UINavigationBar (UINavigationBarCustomDraw)

- (void) drawRect:(CGRect)rect {
NSLog(@"Self.topItem.title: %@",self.topItem.title);        

    [[UIImage imageNamed:@"cabecera.png"] drawInRect:rect];
    [[UIImage imageNamed:@"c_portada.png"] drawInRect:[CGRectMake(0, 0, 60, 60)]]; 
}
@end

Ответы [ 3 ]

4 голосов
/ 19 октября 2011

У вас недопустимые начальные и конечные квадратные скобки вокруг CGRectMake вызова .

Эта строка:

[[UIImage imageNamed:@"c_portada.png"] drawInRect:[CGRectMake(0, 0, 60, 60)]]; 

Должно быть:

[[UIImage imageNamed:@"c_portada.png"] drawInRect:CGRectMake(0, 0, 60, 60)]; 
3 голосов
/ 19 октября 2011

CGRectMake не является функцией target-c. На самом деле это функция c и, следовательно, ей не нужны квадратные скобки, специфичные только для вызовов target-c.

Таким образом, правильный ответ будет:

[[UIImage imageNamed:@"c_portada.png"] drawInRect:CGRectMake(0, 0, 60, 60)]; 
1 голос
/ 19 октября 2011

Должно быть:

[[UIImage imageNamed:@"c_portada.png"] drawInRect:CGRectMake(0, 0, 60, 60)]; 

У вас есть дополнительный [до CGRectMake.

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