如何使用Java将文本对齐方式设置为左对齐或右对齐或居中对齐?

时间:2019-05-02 15:42:15

标签: java android xml android-layout

我正在尝试构建一个聊天应用程序。我想向右发送用户消息,向左发送朋友消息。如何将文本设置为以Java而不是xml开头或结尾?

如何使用Java在Android的左侧设置textview.setText(“ hi”)。

4 个答案:

答案 0 :(得分:0)

您可以像这样在XML中设置重力:

    <TextView
        android:id="@+id/friendMessage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="left" />

或者在活动中这样:

friendMessage.setGravity(Gravity.LEFT);

答案 1 :(得分:0)

您最好使用start和end来更好地支持ltr和rtl屏幕,如下所示:

view.setGravity(Gravity.your wanted gravity (start/end))

答案 2 :(得分:0)

您应该更改视图布局的重力(xml中的layout_gravity属性),而不是视图中的重力(如果宽度与父级不匹配),

根据TextView所在的ViewGroup, 这是一个ViewGroup.LayoutParams的示例:

ViewGroup.LayoutParams params = (ViewGroup.LayoutParams) textView.getLayoutParams();
params.gravity = Gravity.END;
textView.setLayoutParams(params);

答案 3 :(得分:0)

如果将重力用于textView布局,则可能会遇到一些文本对齐错误的行为。我建议使用Constraint Layout

您将需要以编程方式设置约束-在the link with solution