2017-02-18 8 views
2

私はemojisを画面上で使用するアプリケーションに取り組んでいます。 これらの絵文字は、ユーザーが押すことができるボタンに表示されます。iOS「ボイスオーバー」機能のemojiのアクセシビリティテキストはどこにありますか?

このアプリを「アクセシビリティ要件」、別名ボイスオーバーなどと互換性を持たせるには、emojisの説明テキストをすべて取得する必要があります。ユーザーが「ボイスオーバー」を使用している場合は、 。

たとえば、ユーザーが絵文字を「スマイリーフェイス」として選択する場合、ボイスオーバーは「スマイリーフェイス」をユーザーに表示する必要があります。ただし、絵文字のそれぞれには何千もの文字が含まれているため、手動でラベル付けすることはできません。

私は絵文字の説明のテキストをどこで取得すればよいですか?

ありがとうございます!

+1

あなたはそれらをすべて手動でラベル付けすることはできませんが、絵文字の説明テキストが必要だと言います。プログラムでテキストを追加しようとしていますか?この記事はまだ見ましたか? http://tink.uk/accessible-emoji/ – aardrian

+0

ありがとう@aardrian私は実際に答えを見つけました... – RainCast

答えて

2

アクセシビリティサブシステムは、アクセシビリティ指向のテキスト(コントロールの場合はaccessibilityLabelなど)の一部としてアクセシビリティを指定すると、その絵文字をアクセシビリティに表現する方法を既に知っています。

しかし、他の目的(おそらくOSのアクセシビリティシステムを通らないアクセシビリティの宿舎など)のために絵文字の説明が必要な場合は、自分で見つける方法を理解するのに役立つかもしれません。

スウィフトStringでこれを行うことができます。 applyingTransformまたはObjC NSStringstringByApplyingTransform:。 (これらはどちらもCoreFoundationのCFStringTransform APIのラッパーであり、これは以前のNSHipster postでより詳しく説明されています)toUnicodeNameトランスフォームを使用して、絵文字やその他の特殊文字の名前を取得します。例えば、 "{" {COW FACE} "に変換します。

StringTransform文書と前述のNSHipsterの記事で気付いているように、他のスクリプトのテキストをlatinizingしたり、XML/HTMLの16進エスケープコードを生成するなど、文字列変換でもできることがたくさんあります。珍しい文字の場合)

+0

あなたの答えは私よりもはるかに包括的で、答えとしてマークしています:) – RainCast

0

先日私の回答を投稿するのを忘れました。

アップルがすでにフレームワークでこれを処理していることがわかります。

私たちがする必要があるのは、* .accessibilityLabel =絵文字自体を設定することだけです。その後、ボイスオーバー機能がオンになっているときに「スマイリーフェイス」などのすべてが正しく読み上げられます。

恐ろしい!

関連する問題