Je rencontre un problème lors de l'obtention d'une chaîne qui a été convertie à partir d'un élément flottant pour l'afficher dans une cellule personnalisée dans un UITableView.Plantage du programme iPhone lors de la conversion de type float en chaîne
Le programme se bloquera si j'essaie d'affecter la valeur du flotteur à l'étiquette. Si je laisse "strAIAreaIncrease = @" 6,5% ";" non commenté, le programme fonctionne bien - mais sans la valeur calculée.
strAIAreaIncrease = [NSString stringWithFormat:@"%.2f",fltAreaIncrease];
strAIAreaIncrease = [strAIAreaIncrease stringByAppendingString:@"%"];
DebugLog(@"The value of float num is %.2f", fltAreaIncrease);
DebugLog(@"The value of the string is %@", strAIAreaIncrease);
// strAIAreaIncrease = @"6.5%";
La console Débogueur affiche les informations suivantes:
2010-11-14 19:52:38.122 Building Use[855:207] The value of float num is 2.50 2010-11-14 19:52:38.123 Building Use[855:207] The value of the string is 2.50%
Je l'ai utilisé ce format sur d'autres étiquettes de cellules personnalisées sans problème. Quelqu'un a-t-il une idée de ce qui se passe?
Merci.
Il n'y a pas assez d'informations (http://tinyurl.com/so-hints). Comment assigner un flotteur à l'étiquette? Comment avez-vous personnalisé la cellule? Est-ce que votre code fonctionne avec une cellule de table standard? Quelle est la raison de l'accident est donné? Quelle est la trace de la pile? (les deux derniers peuvent être trouvés dans les [journaux de plantage] (http://developer.apple.com/library/ios/#technotes/tn2008/tn2151.html), [accessible via l'organisateur] (http: // stackoverflow .com/questions/2275190/iphone-app-crash-logs)) Nous avons vraiment besoin d'un [cas de test minimal] (http://sscce.org/). – outis
"Comment affectez-vous un flotteur à l'étiquette?" - C'est tout le problème pour moi. J'essaye de changer le flotteur en chaîne pour l'obtenir à lire sur l'étiquette. Cette approche a fonctionné avec d'autres cellules dans le même programme, mais avec suffisamment de va-et-vient, ce programme va planter. Je pense que cela est dû à la fuite de mémoire que j'ai lu à propos de la mise à jour constante des chaînes. Je suis toujours en train d'en apprendre davantage sur les journaux de bord et approfondirai vos suggestions. Je vous remercie. – Aikitect