Android 默认情况下什么是TextView重力?

Android 默认情况下什么是TextView重力?,android,textview,gravity,text-alignment,direction,Android,Textview,Gravity,Text Alignment,Direction,当Android从RTL资源(如阿拉伯语文本)或LTR资源(如英语)获取文本时,TextView文本方向(或重力)似乎会自动改变。默认的文本视图方向(或重力)是什么?如何获得它? 实际上,我想知道输入的是哪种文本语言(RTL或LTR)?如果它是RTL和LTR的混合文本呢 如果版面中有文本视图,可以使用 TextView textView = (TextView) findViewById(R.id.text_view); int gravity = textView.getGravity();

当Android从RTL资源(如阿拉伯语文本)或LTR资源(如英语)获取文本时,TextView文本方向(或重力)似乎会自动改变。默认的文本视图方向(或重力)是什么?如何获得它?
实际上,我想知道输入的是哪种文本语言(RTL或LTR)?如果它是RTL和LTR的混合文本呢

如果版面中有文本视图,可以使用

TextView textView = (TextView) findViewById(R.id.text_view);
int gravity = textView.getGravity();
默认情况下,该值将为8388659。 这等于0x800033

有关TextView,请参阅文档。通过操纵十六进制值,可以获得TextView的默认文本方向

例:在这种情况下,它是0x800033。这是0x800003 | 0x30。这意味着重力是开始|顶部

默认的文本视图方向(或重力)是什么

在TextView源代码中,它被初始化为:

private int mGravity = Gravity.TOP | Gravity.START;
似乎是
Gravity.TOP
Gravity.START
。重力
启动
独立于LTR或RTL

怎么才能做到呢

因此,获取它(您只知道它
Gravity.START
)对于您的目的来说是毫无意义的——要知道输入的是哪种文本语言(RTL或LTR)


对于其他方法,您可以估计文本本身是RTL还是LTR;此处讨论:例如。

默认文本视图重力为-gravity.TOP | gravity.START

如果您想知道输入的是哪种文本语言(RTL或LTR),只需添加一个textWatcher。非常感谢。我从你提到的链接中得到了答案。这是回答问题还是评论?