2010-08-19 3 views
0

Je sais que c'est un doute stupide mais je veux juste m'assurer avant de l'implémenter dans ce projet. S'il vous plaît aider .... J'ai un NSDictionary avec un objet chaîne dedans. La chaîne est concaténée avec 4fields. J'essaye d'afficher cette chaîne sur le contrôleur de vue de détail dans UITableView sur l'iphone.Mise en forme de texte dynamique NSString dans plusieurs styles stockés dans un NSDictionary

Par exemple ma chaîne est présentée comme suit:

MR. ZZZ XXX TTT RRR HHH

Maintenant, quand je suis afficher la chaîne ci-dessus que je veux la première ligne à être en gras et le reste des lignes dans les polices italiques. Comme il s'agit d'un NSDictionary de chaînes, j'ai essayé d'utiliser la méthode string pour obtenir l'index de la chaîne mais dans mon cas, la position continue de changer car ces valeurs proviennent de la base de données.

J'attendrai ur replies..please ..

Répondre

1

idées couples, car il n'y a pas de contrôle de UIKit unique qui peut afficher du texte se multiplient de style en mode natif:

  1. styliser votre chaîne avec HTML et chargez-le dans un UIWebView
  2. Utilisez deux objets UILabel différents: le premier est en gras et le second en italique.
  3. Écrivez votre propre UIView sous-classe qui utilise le cadre CoreText pour dessiner la stylisation vous

Je recommande # 2, suivi de # 1, aveC# 3 étant « le faire si vous êtes masochiste ».

+0

# 3 est réellement facile si aller avec les polices système et lorsque les sauts de ligne ne sont pas importants. Et avec les performances TableView * pourrait être important, # 3 est rapide, # 2 pas beaucoup de frais généraux, # 1 est peut-être déjà trop lourd. – Eiko

+0

Merci pour la réponse. J'ai essayé de faire l'option # 2 mais comment diviser les champs de ma chaîne comme je l'ai dit les index continue de changer .. Je suis désolé si je parais stupide mais j'ai juste commencé à apprendre des apps d'iphone – racharambola

+1

Vous n'avez pas besoin de CoreText; vous pouvez utiliser - [NSString drawInRect: withFont:] et vos amis. –

Questions connexes