2

我正在尝试替换自定义文本视图中的文本。目的是强制文本为 LTR;为此,我在文本中添加了“\u200E”前缀。现在 setText() 对自定义的 textView 没有任何影响。

public class LocalizedTextView extends TextView {
    public LocalizedTextView(Context context) {
        super(context);
        init(context);
    }

    public LocalizedTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context);
    }

    public LocalizedTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init(context);
    }

    private void init(Context context) {
        this.setText("\u200E" + getText().toString());
    }
}

这是自定义元素:

<com.tempProject.customviews.LocalizedTextView
    android:id="@+id/item_text"
    style="@style/DrawerSectionText"
    android:textDirection="ltr" />

对于早于 4.2.0 的设备,任何强制带有 RTL 内容的 textView 与左侧对齐的想法都将受到欢迎。必须在清单中将 android:supportsRtl 标志设置为 true。

4

0 回答 0