как удалить лишний 0 перед десятичной точкой

#ios #objective-c

#iOS #objective-c

Вопрос:

Я следовал этому решению (http://davidjhinson.wordpress.com/2008/12/22/simple-formatting-in-a-cocoa-touch-text-edit-field-uitextfield/ ) и это работает нормально, когда я ввожу первую цифру [результат: «0.01«]. Но когда я ввожу вторую цифру, результат выглядит так «00.11«. Он добавляет еще один 0. Как сделать так, чтобы отформатировать мое текстовое поле в это «0,11», когда я ввожу вторую цифру.

Вот мой код

 stringToFormat = [stringToFormat stringReplacingOccurenceOfString:[NSString stringWithFormat:@"%@", [GLobalSettings getCurrency]] withString @""]; // remove currency
NSString normalizedString = stringToFormat;
normalizedString = [normalizedString stringByReplacingOccurenceOfString"@"." withString:@""]; // remove dot
if(normalizedString.length <= 2)
{
    normalizedString = [@"" stringByAppendingFormat:@"%.2f", [normalizedString floatValue]/100.0];

    return [NSString stringWithFormat:@"%@ %@", [GlobalSettings getCurrency], normalizedString];

}
  

любая помощь будет высоко оценена…Спасибо..

Комментарии:

1. Ты делаешь это : ? [@"" stringByAppendingFormat:@"%.2f",... ?

2. И почему вы это делаете [NSString stringWithFormat:@"%@", [GLobalSettings getCurrency]] ?

3. И не помешало бы, если бы вы добавили несколько комментариев к своему коду, чтобы объяснить, что, по вашему мнению, вы делаете.

4. Черт возьми! Ваша ссылка использует это [@"" stringByAppendingFormat:... утверждение, и он выдает себя за эксперта???