Ошибка Xcode kCFNumberFormatterCurrencyStyle

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

Incompatible integer to pointer conversion initializing 'NSInteger *' (aka 'long *') with an expression of type 'NSInteger' (aka 'long')

Implicit conversion from enumeration type 'enum CFNumberFormatterStyle' to different enumeration type 'NSNumberFormatterStyle' (aka '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];
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
117
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуйте с этим. Обратите внимание, что 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];

Используйте современный синтаксис: NSNumber *tempPrice = @(intPrice);

rmaddy 27.05.2019 03:39

@rmaddy, правда. Я бы обычно использовал это. Но хотел показать точную проблему, которая у него была, не сбивая его с толку. Так что оставил эту часть как есть.

adev 27.05.2019 08:31

спасибо - все заработало, но с другим вопросом, что такое "hasPrefix:@"CUP"? когда я удаляю это, цена показывает, иначе нет? if ([price hasPrefix:@"CUP"] && [price hasSuffix:@" .00"]) { newString = [цена substringFromIndex:1]; newString = [newString substringToIndex:[новая длина строки]-3]; } cell.lblPrice.text = [NSString stringWithFormat:@"$%@",newString]; }

bjorn hustrulid 28.05.2019 00:10

@bjornhustrulid, не могли бы вы создать новый вопрос? Трудно понять код из вашего комментария. Также, если этот ответ помог, не могли бы вы принять его, нажав «галочку» рядом с ответом.

adev 28.05.2019 04:17

Другие вопросы по теме