本文介紹了Android混合語言文本-帶有RTL和LTR文本的字符串上的BidiForMatter的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我有一個ListView
自定義View
,其中我有一個TextView
:
<TextView
android:id="@+id/textViewItemTitle"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="right|center_horizontal"
android:text="title" />
此TextView
包含希伯來語文本。
if(!bidi.isRtl(event)){
event = bidi.unicodeWrap(event);
}
holder.title.setText(String.format("%s %s %s", bidi.unicodeWrap(item.getStartTimeNoDate().trim()), event,
bidi.unicodeWrap(item.getDuration().trim())));
其中第一個參數是time hh:mm:ss,第二個(事件)是希伯來語字符串,第三個參數與第一個參數類似。
問題:有時事件字符串包含希伯來語和英語的混合文本,如abc-???
,則所有文本的行為方式類似于重力向左(而不是像我在文本視圖中定義的那樣向右),我的意思是縮進到左側。
如何解決?
推薦答案
嘗試添加到您的文本視圖:
android:textDirection="anyRtl"
有關更多閱讀內容:
http://developer.android.com/reference/android/view/View.html#attr_android:textDirection
這篇關于Android混合語言文本-帶有RTL和LTR文本的字符串上的BidiForMatter的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,