2012-11-17 6 views

Antwort

4

Sie können die Schriftart auswählen, die Sie in iOS verwenden möchten < 6 und sie bei Bedarf zuweisen. Definieren Sie ein Makro wie folgt aus:

#define SYSTEM_VERSION_LESS_THAN(v)  
     ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending) 

und dann können Sie in Ihrem Code tun:

NSString *fontName = @"Avenir"; 

if SYSTEM_VERSION_LESS_THAN(6.0) { 
    fontName = @"ArialMT"; 
} 

Sie eine Liste der unterstützten Schriftarten finden Sie hier: http://iosfonts.com/

+9

Warum sich plagen Überprüfung iOS-Versionen? Probieren Sie die erste Schriftart aus. Wenn Sie ein 'nil'' UIFont' erhalten, dann greifen Sie auf die andere Schriftart zurück. Dies wird die App auch ein wenig zukunftssicher machen. – rmaddy

+0

Was passiert mit Schriftarten, die mit Storyboards/Interface Builder zugewiesen wurden? Ich kann sehen, dass Avenir in der Liste enthalten ist. Irgendwelche Ideen darüber, was auf iOS5 passieren würde? –

+0

@Ben Clayton Man kann eine Schriftart verwenden, die mit iOS 6.0 verfügbar ist, falls die Schriftart nicht mit niedrigeren Versionen von iOS, d. H. IOS <6.0, verfügbar ist, wird eine Systemstandardschrift, d.h. Helvetica, verwendet. –

Verwandte Themen