UIButton setFont не работает на iPhone 2G iOS 3.1.3 - PullRequest
2 голосов
/ 27 марта 2011

Мой тестер есть в iPhone 2G с iOS 3.1.3. Приложение вылетает на его телефоне по этому методу:

- (void) viewDidLoad 
{
    [super viewDidLoad];

    [resumeGame.titleLabel setFont:[UIFont fontWithName:@"Old English Text MT" size:20.0]];
    [startNewGame.titleLabel setFont:[UIFont fontWithName:@"Old English Text MT" size:20.0]];
    [options.titleLabel setFont:[UIFont fontWithName:@"Old English Text MT" size:20.0]];   
}        

И Интерфейс:

@interface PuzzleViewController : UIViewController 
{
    IBOutlet UIButton *resumeGame;
    IBOutlet UIButton *startNewGame;
    IBOutlet UIButton *options;
}

@property (nonatomic, retain) IBOutlet UIButton *resumeGame;
@property (nonatomic, retain) IBOutlet UIButton *startNewGame;
@property (nonatomic, retain) IBOutlet UIButton *options;

Шрифт копируется в папку «Ресурсы», и «Info.plist» «Шрифт, предоставляемый приложением» установлен правильно.

Есть идеи, как это исправить?

Ответы [ 2 ]

4 голосов
/ 27 марта 2011

Согласно документации по UIKit Keys , пользовательские шрифты стали доступными в iOS 3.2 .Скорее всего, это причина того, что ваш код не работает на iOS 3.1.3 (или, как его называли в тот день - iPhone OS 3.1.3).

1 голос
/ 27 марта 2011

Прежде всего я хотел бы сказать вам, что очень немногие используют iPhone 2G с iOS 3.1.3.На самом деле очень немногие используют что-либо ниже iOS 4.0.Мы обычно не поддерживаем что-либо ниже 4.0, если клиент явно не требует этого.Если мы обнаружим ошибки в более ранних версиях iOS, мы просто откажемся от поддержки этой версии, потому что это просто не стоит того времени, которое требуется, чтобы исправить ее.нам нужно будет предоставить трассировку стека, иначе нам будет очень сложно сказать вам, что происходит не так.недоступно в iOS 3.1.3.Если вам нужны пользовательские шрифты, вы не сможете поддерживать что-либо ниже 3.2.iOS 3.2 предназначена только для iPad, поэтому, если ваше приложение предназначено только для iPhone, это означает, что вы не будете поддерживать ничего ниже 4.0.Как я указывал в своем первоначальном ответе, большинство пользователей используют> = 4.0 в любом случае.

...