Как остановить UILabel от замены «…» символом многоточия

У меня есть приложение iOS, которое широко использует ярлык с фиксированной шириной.

После перехода на iOS 7 sdk и цель сборки 6.1 все метки автоматически заменяют вхождения трех знаков препинания символом многоточия. Это ломает много вещей и выглядит странно, так как символ эллипсиса отсутствует в используемом шрифте, и iOS считает нужным использовать его из другого шрифта.

Как остановить это поведение?

4 Solutions collect form web for “Как остановить UILabel от замены «…» символом многоточия”

Альтернативный номер три: вставьте пространство с нулевой шириной (U + 200B) между точками.

(Добавлено как ответ на запрос ОП)

Это лигатура, и iOS, похоже, автоматически их заменяет (например, fl ). Похоже, что есть некоторые опции, чтобы отключить их, см. Этот вопрос: присоединяя символы «f» и «l»

Один из способов – заменить периоды ASCII символом Unicode 2024 («ONE DOT LEADER»). Он выглядит точно как период, но не должен автоматически преобразовываться.

Что бы вы могли сделать, если это было широко распространено, это изменить все ваши UILabels на подкласс, MyLabel и перехватить сообщения, чтобы установить текст, найти три точки и, если их найти, изменить их на символ юникода выше.

Да, это большая PITA, но я не знаю другого способа обхода.

РЕДАКТИРОВАТЬ

Другая идея – найти UILabel с открытым исходным кодом (должен быть хотя бы один) и использовать его.

Другая альтернатива: эллипсис – это истинный характер. Почему бы вам не попробовать добавить его в свой шрифт (с Fontlab, FontForge или Glyphs) с той же шириной, что и другие символы?

  • Максимальный размер шрифта UIFont
  • AutoLayout связывает два UILabels с одинаковым размером шрифта
  • Автоматическое изменение размера UILabel на основе текста, который будет отображаться
  • Автоматическая регулировка высоты UILabel
  • NSTextAlignment обратный. Естественный
  • Как вертикально корректировать текстовое положение titleView navigationBar при использовании пользовательского шрифта?
  • UIFont: я не могу получить размер шрифта. Почему мой шрифт равен нулю?
  • TTTAttributedLabel кликаемый токен усечения
  • Как остановить UILabel от обрезки пространства в конце?
  • как установить вертикальную позицию текста CATextLayer?
  • Последняя строка NSAttributedString, не отображаемая в UILabel
  • Interesting Posts

    core audio: как один пакет = один байт, когда явно один пакет = 4 байта

    didSelectRowAtIndex не вызывается для WKInterfaceTable

    iphone отложен ответ от сервера

    NSUserDefaults сбрасывается

    Проблемы с фоновым изображением iOS5 UINavigationBar, когда отображается подсказка

    Как изменить свойство textLabel в UIButton программно в iOS?

    Как получить секрет клиента в API Youtube для клиента iOS?

    Шифрование RSA с использованием openssl, переменная длина для зашифрованного текста с PKCS1 Padding

    Как исправить ошибку Xcode: не удалось найти файлы поддержки устройств на iPhone X (11.1) с помощью Xcode Beta (9.2 9C32c)

    UIColllectionView не соблюдает макет

    Наклейки на OSSpinLockLockSlow

    Добавить сегментированный элемент управления в панель навигации и сохранить заголовок с помощью кнопок

    iframe не прокручивается в iOS

    Основные данные: вставка объектов, разбитых в глобальной очереди

    Обработка и отображение сообщений журнала SDK

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.