2011-10-19 19 views
0

UINavigationBarに2つのイメージを描画します。最初の "cabecera.png"はバックグラウンドで、2番目の@ "c_portada.png"はバックグラウンドを超えていなければならないアイコンです。 drawInRectメソッドで画像を描画しようとしていますが、2番目の画像を描画しようとすると「Expected Identifier」というエラーが表示されます。このエラーを解決するにはどうすればいいですか? "期待される識別子"

@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 
+2

navigatonバー(のdrawRectのカテゴリ交換)に描画するこの方法は、iOSの5 – jrturton

答えて

4

は無効な大手とCGRectMakeコール周りの角括弧の末尾を持っています。

このライン:

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

は次のようになります。

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

のように動作しないことに注意してくださいありがとうございました!私は眠っている、私はcoffeを持っている必要があります:-) – Jimmy

1

それは次のようになります。

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

あなたはCGRectMake前に余分な[を持っています。

+1

あなたはまだオフブラケットです: –

+0

ボール!あなたが正しいです :) – Jano

3

CGRectMakeは、目的関数ではありません。実際にはc関数なので、objective-c呼び出し専用の角括弧は必要ありません。

だから、正しい答えは次のようになります。

[[UIImage imageNamed:@"c_portada.png"] drawInRect:CGRectMake(0, 0, 60, 60)]; 
関連する問題