默认情况下 TextView Gravity 是什么?
What is TextView Gravity by default?
似乎 TextView 文本方向(或重力)在从 RTL 资源(例如阿拉伯文本)或 LTR 资源(例如英语)获取文本时 Android 会自动更改。什么是默认的 TextView 方向(或重力)以及如何获得它?
其实我想知道输入的是哪种文本语言(RTL 或 LTR)?如果它是同时具有 RTL 和 LTR 的混合文本怎么办?
如果您的布局中有一个 TextView,您可以使用
获取该视图的引力
TextView textView = (TextView) findViewById(R.id.text_view);
int gravity = textView.getGravity();
默认情况下,该值为 8388659。
等于 0x800033.
请参阅 TextView 的文档 here。通过操作十六进制值,您可以获得 TextView 的默认文本方向。
例如:在本例中为 0x800033。这是 0x800003 | 0x30。这意味着重力是 start |顶部.
What is the default TextView direction (or Gravity)
在TextView源码中初始化为:
private int mGravity = Gravity.TOP | Gravity.START;
好像是Gravity.TOP
和Gravity.START
。 Gravity START
与 LTR 或 RTL 无关。
and how to get that
所以得到它(你只知道它Gravity.START
)对你的目的来说是没有意义的——找出输入的文本语言(RTL或LTR).
对于其他方法,您可以估计文本本身是 RTL 还是 LTR;此处讨论:例如 Identifyng RTL language in Android。
默认 TextView 引力为 - Gravity.TOP | Gravity.START
似乎 TextView 文本方向(或重力)在从 RTL 资源(例如阿拉伯文本)或 LTR 资源(例如英语)获取文本时 Android 会自动更改。什么是默认的 TextView 方向(或重力)以及如何获得它? 其实我想知道输入的是哪种文本语言(RTL 或 LTR)?如果它是同时具有 RTL 和 LTR 的混合文本怎么办?
如果您的布局中有一个 TextView,您可以使用
获取该视图的引力TextView textView = (TextView) findViewById(R.id.text_view);
int gravity = textView.getGravity();
默认情况下,该值为 8388659。 等于 0x800033.
请参阅 TextView 的文档 here。通过操作十六进制值,您可以获得 TextView 的默认文本方向。
例如:在本例中为 0x800033。这是 0x800003 | 0x30。这意味着重力是 start |顶部.
What is the default TextView direction (or Gravity)
在TextView源码中初始化为:
private int mGravity = Gravity.TOP | Gravity.START;
好像是Gravity.TOP
和Gravity.START
。 Gravity START
与 LTR 或 RTL 无关。
and how to get that
所以得到它(你只知道它Gravity.START
)对你的目的来说是没有意义的——找出输入的文本语言(RTL或LTR).
对于其他方法,您可以估计文本本身是 RTL 还是 LTR;此处讨论:例如 Identifyng RTL language in Android。
默认 TextView 引力为 - Gravity.TOP | Gravity.START