2017-02-18 5 views
2

Я работаю над приложением, которое использует emojis на экране. Эти emojis отображаются на кнопках, которые могут быть нажаты пользователями.Где найти тексты доступности emoji для функции «голос поверх» iOS?

Чтобы сделать это приложение совместимым с «требованиями к доступности», aka voice over и т. Д. Мне нужно получить весь текст описания emojis, а когда пользователь использует «голос поверх», emojis может быть прочитан пользователю ,

Например, когда пользователь выбирает эможи, это «смайлик», голос должен читать пользователю «смайлик». Тем не менее, я не могу пометить вручную для каждого из emoji, потому что их тысячи.

Мне интересно, где я должен получить все тексты описания emoji?

Спасибо!

+1

Вы говорите, что вы не можете пометить их все вручную, но вы хотите текст описания эмуляции. Вы пытаетесь программно добавить текст? Вы еще не видели эту статью? http://tink.uk/accessible-emoji/ – aardrian

+0

спасибо @aardrian Я действительно нашел ответ ... – RainCast

ответ

2

Как вы уже заметили, подсистема Accessibility уже знает, как легко описывать emoji, если она предоставляется как часть текста, ориентированного на доступность (например, для элемента управления accessibilityLabel).

Тем не менее, если вам когда-либо понадобится описание emoji для других целей (возможно, какое-то доступное жилье, которое не проходит через систему доступности ОС), это может помочь узнать, как их найти самостоятельно.

Вы можете сделать это с помощью Swift String. applyingTransform или ObjC NSString. stringByApplyingTransform:. (Оба они являются обертками для API CFStringTransform CoreFoundation, который лучше документирован и представлен в старом NSHipster post.) Используйте преобразование toUnicodeName, чтобы получить имена для emoji и других специальных символов - например, как указано в документах, которые преобразуют " "В" {DOG FACE} {COW FACE} ".

(Как вы могли заметить в документах StringTransform и вышеприведенной статье NSHipster, есть много других интересных вещей, которые вы можете сделать и с строковыми преобразованиями, например, латинский текст из других скриптов или создание шестнадцатеричных escape-кодов XML/HTML для необычных персонажей.)

+0

спасибо @rickster, ваш ответ намного более всеобъемлющий, чем мой, отметил его как ответ :) – RainCast

0

Забыл ответить на другой вопрос.

Оказывается, что Apple уже справилась с этим в рамках.

Все, что нам нужно сделать, это просто установить * .accessibilityLabel = сам emoji. Затем все считывается правильно, например «смайлик», когда включена функция передачи голоса.

Удивительный!

Смежные вопросы