66 votes

UITextView - Configuration de la police ne fonctionne pas avec iOS 6 sur XCode 5

J'utilise les storyboards de mon INTERFACE. J'étais auparavant à l'aide de XCode 4.6 et sorti sur iOS 6. Depuis, j'ai mis à jour pour iOS 7 à l'aide de XCode 5 et mise à jour de la table de montage séquentiel pour le travail bien avec XCode 5. J'ai une question cependant:

UITextView ne souhaitez pas afficher les modifications de police dans le code. Le texte des modifications de couleur, beau travail. Toutes les autres modifications de la propriété sont très bien. La police, pas du tout. J'ai été en utilisant une police personnalisée, donc j'ai vérifié les différentes polices de caractères avec des tailles différentes (c'est à dire systemFontOfSize:) mais cela ne fonctionne pas. L'affichage de texte seulement montre la police définie dans la table de montage séquentiel. Que pourrais-je manquer ici? Existe-il des auto-contraintes de mise en forme qui mess avec ce genre de chose? J'ai eu quelques problèmes avec des contraintes lors de la migration, mais comme je l'ai dit, les polices bien fonctionner dans iOS 7.

Je suppose que c'est quelque chose dans la table de montage que je suis absent, comme si je créer un UIViewController et ajouter un texte à afficher dans le code, il fonctionne très bien.

Je l'avais mis en place un code, mais je ne suis pas sûr que ça aide dans ce cas.

114voto

jab Points 1836

Encore plus étrange, cela ne se produit que sur iPhone, pas sur iPad.

Si vous définissez la police dans le code et que vous ne voulez pas d'une vue de texte modifiable, procédez comme suit:

 textView.editable = YES;
textView.font = newFont;
textView.editable = NO;
 

74voto

Satachito Points 556

Dans mon cas, il s'agit de la propriété 'sélectionnable' de UITextView.

J'ai donc coché la propriété 'sélectionnable' de UITextView dans Storyboard Editor pour la définir, puis sur Oui. Pour définir sélectionnable

et plus tard dans viewWillAppear, définissez cette propriété sur NO.

 textview.text = @"some text";
textview.selectable = NO;
 

56voto

Harry Points 1141

Le problème était dû au fait que la propriété editable était fausse dans le storyboard. Je ne sais absolument pas pourquoi cela a laissé la police inchangée - et uniquement sur iOS 6.

21voto

Jordan Montel Points 5846

Pour moi, le travail est simple si vous définissez le texte de votre UITextView et, ensuite, la police (identique pour la couleur):

 _myTextView.text = @"text";
[_myTextView setFont:[UIFont fontWithName:@"Helvetica Neue" size:18.0f]];
_myTextView.textColor = [UIColor whiteColor];
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X