Sto riscontrando un problema nell'impostare il font per UILabels e UITextViews con Interface Builder. Sto provando a impostare il carattere su Gill Sans. Se ho impostato a livello di codice che funziona benissimo, in questo modo:Viene visualizzato il font di UILabel con Interface Builder Helvetica
myLabel.font = [UIFont fontWithName:@"Gill Sans" size:24.0];
Ma se provo impostazione con Interface Builder, ottengo lo stesso comportamento descritto in questo domanda qui iPhone SDK: Interface Builder label font, only shows when editing label, ma il Gill Sans è presumibilmente accessibile l'iPad (ed è, dal momento che funziona se l'ho impostato dal codice). E se lo eseguo e faccio questo:
NSLog(@"%@", myLabel.font.fontName);
stampa "Helvetica".
Di solito non mi dispiacerebbe impostarlo a livello di codice, ma il problema è che questa particolare classe viene utilizzata in diversi luoghi con diversi file di pennini per fornire layout diversi, quindi non posso averlo codificato per usare sempre lo stesso famiglia di font. E la sottoclassi per ogni volta che appare sarebbe un enorme dolore, specialmente perché voglio consentire ai designer di creare e modificare tutto il layout con il generatore di interfacce ogni volta che lo desiderano, e se devono dirmi quale carattere vogliono ogni volta, quindi può hardcode ogni caso particolare, sarebbe molto imbarazzante.
Qualcuno ha riscontrato questo problema prima? Forse Interface Builder mi sta limitando ad usare i font iPhone anche se il target del file xib è già impostato su iPad, ma come faccio a convincerlo che sto prendendo di mira l'iPad?
Grazie in anticipo, Filipe
Sì, lo capisco, ma penso che il font Gill Sans sia presente su iPhone OS 3.2, non è vero? Voglio dire, funziona bene se imposto il font per codice. Il problema è impostarlo con Interface Builder. – filipe