2015-01-12 9 views
10

テキストビューでは、テキストがヘブライ文字で始まると、テキスト全体がRTLモードで表示されます。ヘブライ語とアラビア語の右から左へのテキストの自動入力を防止するにはどうすればよいですか?

文全体が英語であるため、代わりに

דני went to school 

のユーザーが

            went to school דני 

(最初のを見ている間に問題が、私の場合、最初の単語だけがヘブライ語であるということです単語が文章の最後にある、英語で読むとき)

どうすればこのようなことが起こらないようにし、テキストを左から開始することができますか?

+1

右のBiDi文字を追加して、小さなRTL部分を除いてテキスト全体がLTRであることを示しています。文章はRTL文字で始まるのでRTLにデフォルト設定されているようです。これを確認するには、テキストの先頭にLTRシーケンスを追加します。 – njzk2

+2

テキストを '\ u200E 'で開始するだけで、テキストをLTRとみなすことができます。 – njzk2

+0

ありがとう、@ njzk2。あなたがこれを答えると、私はそれを受け入れるでしょう。 –

答えて

20

Unicode文字はintrectly LTRまたはRTLです。ほとんどの場合、テキスト全体が最初の文字からその向きを取ります。ヘブライ文字はRTLです。

はあなたのテキストはRTLの文字で始まるので、RTLと考えられているhttp://en.wikipedia.org/wiki/Bi-directional_text

を参照してください。 left-to-right mark,"\u200E"を使用すると、LTRと見なすことができます。

この特殊文字でテキストを開始すると、レイアウトシステムにテキスト全体の明示的な方向が示されます。しかし、RTLセクションは明示的にRTLであるため、そのように見なされます。

たとえば、数字は強いインジケータではないため、配置されているセクションの方向には影響しません。したがって、異なる方向のセクション間の数字が問題になる可能性があり、明示的に表示する必要があります。

+0

http://developer.android.com/reference/android/support/v4/text/BidiFormatter.htmlも参照してください。 – vokilam

関連する問題