Верхние индексы в атрибутной строке

Я пытаюсь заставить свой ярлык выглядеть так:

введите описание изображения здесь

Но используя атрибутную строку, мне удалось получить этот результат:

введите описание изображения здесь

Мой код:

NSString *string = [NSString stringWithFormat:@"%0.2f",ask]; NSMutableAttributedString *buyString = [[NSMutableAttributedString alloc] initWithString:string]; [buyString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:15.0] range:NSMakeRange(2, buyString.length - 2)]; self.labelBuy.attributedText = buyString; 

Как видите, цифры после точки остаются ниже, и я хотел бы вытащить их на первое место в качестве первого примера. Есть ли способ установить атрибутный строковый фрейм?

Вы должны использовать NSBaselineOffsetAttributedName .

Из документа:

NSBaselineOffsetAttributeName
Значение этого атрибута – это объект NSNumber содержащий значение с плавающей точкой, указывающее смещение символа от базовой линии, в точках. Значение по умолчанию равно 0.
Доступен в iOS 7.0 и более поздних версиях.

Из вашего примера:

 [buyString addAttribute:NSBaselineOffsetAttributeName value:@(10.0) range:NSMakeRange(2, buyString.length - 2)]; 

Возможно, вам придется изменить значение, соответствующее вашим потребностям.

Почему бы не использовать верхний индекс? Вы должны сначала #import “CoreText / CoreText.h”

  [buyString addAttribute:(NSString *)kCTSuperscriptAttributeName value:@1 range:NSMakeRange(2, buyString.length - 2)]; 
  • Удаленное уведомление iOS 8
  • UIWebView не изменяет размер при изменении ориентации?
  • IOS 6: ориентация устройства на пейзаж
  • Получить общее количество шагов для каждой даты в HealthKit
  • xcode 6 IB_DESIGNABLE - не загружать ресурсы из пакета в построителе интерфейса
  • Как сохранить пользовательские объекты в NSUserDefaults
  • Я хочу разрешить недействительные SSL-сертификаты с помощью AFNetworking
  • Построение часового пояса по часовой стрелке
  • Как можно маскировать UIImageView?
  • SVM-classификатор на основе функций HOG для «обнаружения объекта» в OpenCV
  • Xcode 6 и Embedded Frameworks поддерживаются только в iOS8
  • Давайте будем гением компьютера.