Ошибка XCode kCFNumberFormatterCurrencyStyle - PullRequest
1 голос
/ 27 мая 2019

Я пытаюсь отформатировать валюту США за 123 123 доллара в приложении, отображающем свойства на карте.Число show $ (null) должно показывать #

Несовместимое целочисленное преобразование в указатель, инициализирующее NSInteger * (он же long *) с выражением типа NSInteger (он же long).)

Неявное преобразование из типа перечисления 'enum CFNumberFormatterStyle' в другой тип перечисления 'NSNumberFormatterStyle' (также известный как enum NSNumberFormatterStyle ')

cell.imgViewPropertyType.image = [UIImage imageNamed:@"for_sale"];
NSInteger *intPrice = [theProperty.priceSale integerValue];
NSNumber *tempPrice = [NSNumber numberWithInteger:intPrice];
NSString *price = [NSNumberFormatter localizedStringFromNumber:tempPrice numberStyle:kCFNumberFormatterCurrencyStyle];

1 Ответ

0 голосов
/ 27 мая 2019

Попробуй с этим.Обратите внимание, что intPrice не является указателем, и, следовательно, вам нужно объявить как NSInteger intPrice вместо NSInteger *intPrice.Вот причина ошибки, которую вы получаете.

cell.imgViewPropertyType.image = [UIImage imageNamed:@"for_sale"];
NSInteger intPrice = [theProperty.priceSale integerValue];
NSNumber *tempPrice = [NSNumber numberWithInteger:intPrice];

Как указывалось ниже, вы также можете использовать нижнюю строку.

NSNumber *tempPrice = @(intPrice);

Что касается второй ошибки о CFNumberFormatterStyle, localizedStringFromNumber принимает NSNumberFormatterStyle, а не тип CFNumberFormatterStyle.Вы пытаетесь передать неправильный тип стиля там.Попробуйте с NSNumberFormatterCurrencyStyle.

NSString *price = [NSNumberFormatter localizedStringFromNumber:tempPrice numberStyle:NSNumberFormatterCurrencyStyle];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...