Я включил заголовок в свой файл prefix.pch так:
#import <Availability.h>
#ifndef __IPHONE_3_0
#warning "This project uses features only available in iPhone SDK 3.0 and later."
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "Constants.h"
#endif
А во включенном заголовке есть класс расширения:
@interface UIColor (MyApp)
+(UIColor *) myColor;
+(UIColor *) navColor;
@end
@implementation UIColor (MyApp)
+(UIColor *) myColor { return [UIColor colorWithRed:0 green:0.3 blue:0.7 alpha:1.0]; }
+(UIColor *) navColor { return [UIColor colorWithRed:0.3 green:0.1 blue:0.2 alpha:1.0]; }
@end
Который я затем назвал в других файлах как таковой:
[self.theTable setSeparatorColor:[UIColor myColor]];
Но после обновления до xCode 4.2 / iOS 5 теперь происходит сбой, говоря "Thread 1: Program received signal: "SIGABRT".
в строке выше.
Это происходит всякий раз, когда я пытаюсь ссылаться на цвет независимо от того, какой файл и в каком контексте. У меня не было этой проблемы при работе на iOS 4.
Есть ли лучший способ расширить класс таким образом, чтобы он был доступен для всех файлов, или исправить вышеуказанную ошибку?
Большое спасибо,
Тим