Java设置View 的 Layout_Gravity 和 Gravity

1. 前言

Layout_Gravity 和 Gravity 的含义和区别大家都熟悉,但是在java代码中怎样对一个控件设置它的 Layout_Gravity,Gravity 呢,这里我用一个例子来测试下。

2. 干货

如下图,有三个按钮,第三个按钮是被测试的对象,点击第一个按钮,会对第三个按钮设置它的 Layout_Gravity ,点击第二个按钮,对对第三个按钮设置它的 Gravity 。


Java设置View 的 Layout_Gravity 和 Gravity_第1张图片


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="guo.layoutparamsgravity.MainActivity">

    <Button
        android:text="l_gravity"
        android:id="@+id/bt_l_gravity"
        android:layout_width="100dp"
        android:layout_height="40dp" />

    <Button
        android:text="gravity"
        android:id="@+id/bt_gravity"
        android:layout_width="100dp"
        android:layout_height="40dp" />

    <Button
        android:gravity="start"
        android:text="test"
        android:id="@+id/bt_test"
        android:layout_width="100dp"
        android:layout_height="100dp" />
LinearLayout>

再看java代码,设置 Layout_Gravity 代码如下

                LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(btTest.getLayoutParams());
                lp.gravity = Gravity.CENTER;
                btTest.setLayoutParams(lp);

设置 Gravity 代码

   btTest.setGravity(Gravity.CENTER);

运行后效果如下


Java设置View 的 Layout_Gravity 和 Gravity_第2张图片

好的,设置成功

你可能感兴趣的:(一切尽在掌握中)