我正在尝试替换自定义文本视图中的文本。目的是强制文本为 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。