2

我正在尝试在 m TextView 中呈现希伯来语文本。

我在这里读过我需要将字体从默认的 android 更改为支持希伯来语的字体。

我尝试了一些解决方案,但都没有奏效:

    Typeface font= Typeface.createFromAsset(mContext.getAssets(), "fonts/Raanana.ttf");
    titleTextView.setTypeface(font); 

    titleTextView.setText(mTitles[position]);
    

或者:

    titleTextView.setText(Html.fromHtml(mTitles[position]));

这是我的xml:

<ImageView
    android:id="@+id/todo_row_image"
    android:layout_width="50dp"
    android:layout_height="30dp"
    android:layout_marginBottom="32dp"
    android:layout_marginLeft="21dp"
    android:contentDescription="my image" />

<TextView
    android:id="@+id/todo_row_title"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="6dp"
    android:lines="1"
    android:text="@+id/titleTextView"
    android:layout_toRightOf="@id/todo_row_image"
    android:textSize="12sp" >
</TextView>

<TextView
    android:id="@+id/todo_row_date"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/todo_row_title"
    android:layout_marginTop="6dp"
    android:lines="1"
    android:text="@+id/dateTextView"
    android:textSize="12sp" >

</TextView>

知道如何解决这个问题吗?

有没有办法为每个应用程序定义默认字体?每个布局?

4

2 回答 2

0

TextView 中的希伯来语“开箱即用”效果很好。可能是 BIDI 存在问题,但通常它显示得很好。

关于你的第二个问题,如何设置使用希伯来语时要使用的布局,看看这个: RTL Languages support in android and resource qualifiers

于 2013-09-26T17:42:19.800 回答
0

根据我的经验,如果您在 TextView 上指定 android:singleLine="true" 它将不会显示希伯来字符,这绝对是 android 源代码中的一个错误,可能会在以后的版本中修复。

基于此,我相信 android:lines="1" 是导致您出现问题的原因。

于 2021-07-05T18:28:15.953 回答