в приложении Иос, я пытаюсь, чтобы позволить пользователю ввести номер и формат, и я хочу, чтобы получить строку с этим номером, отформатированный как указанный пользователем:Пользовательские форматирование из NSNumber
Для этого я попытался это:
- (NSString *)formatNumber:(NSNumber *)number withFormat:(NSString *)format
{
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setPositiveFormat:format];
NSString *formatedString = [formatter stringFromNumber:number];
return formatedString;
}
но если я пытаюсь вызвать что-то вроде этого:
NSNumber *number = [NSNumber numberWithDouble:1234567890];
NSString *string = [self formatNumber:number withFormat:@"###-###-####"];
я ожидал, чтобы получить результат: 123-456-7890
Но он не работает.
- это формат @ "### - ### - ####" неправильного синтаксиса? или я неправильно использую NSNumberFormatter?
Спасибо за любую помощь
PS: Я не хочу жесткий код алгоритма к проходным символов и вставьте тире (-), так как этот формат является лишь примером, поскольку пользователь может свободно изменить Это.
Благодаря
EDIT
SORRY в то время как сочинительство мой код здесь я пропустил линию. добавили это
Где в вашем методе используется параметр формата? –
Вы, кажется, не устанавливаете формат NSNumberFormatter нигде в своем методе. Я не вижу, что он делает что-нибудь с «NOM-форматом формата», который вы его отправляете. – James
Прошу прощения, я отредактировал свой вопрос. Я забыл включить его во время написания моего вопроса. – Youssef