一手遮天 Android - view(基础): 边距相关,隐藏相关

项目地址 https://github.com/webabcd/AndroidDemo
作者 webabcd

一手遮天 Android - view(基础): 边距相关,隐藏相关

示例如下:

/view/ViewDemo2.java

/**
 * 演示 view 边距相关,隐藏相关
 */

package com.webabcd.androiddemo.view;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.webabcd.androiddemo.R;

public class ViewDemo2 extends AppCompatActivity {

    private TextView _textView2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view_viewdemo2);

        _textView2 = findViewById(R.id.textView2);

        sample();
    }

    private void sample() {
        // 设置 margin(left, top, right, bottom),单位是 px
        LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams)_textView2.getLayoutParams();
        layoutParams.setMargins(20, 20,20, 20);
        _textView2.setLayoutParams(layoutParams);

        // 设置 padding(left, top, right, bottom),单位是 px
        _textView2.setPadding(20, 20, 20, 20);
    }
}

/layout/activity_view_viewdemo2.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!--
        layout_margin, layout_marginLeft, layout_marginTop, layout_marginRight, layout_marginBottom, layout_marginStart, layout_marginEnd - 控件与父容器的间距
            layout_marginStart - 文字是从左到右排列方式的话则与 layout_marginLeft 一致,反之则与 layout_marginRight 一致
            layout_marginEnd - 文字是从左到右排列方式的话则与 layout_marginRight 一致,反之则与 layout_marginLeft 一致
        padding, paddingLeft, paddingTop, paddingRight, paddingBottom, paddingStart, paddingEnd - 控件边框与控件内容的间距
            paddingStart - 文字是从左到右排列方式的话则与 paddingLeft 一致,反之则与 paddingRight 一致
            paddingEnd - 文字是从左到右排列方式的话则与 paddingRight 一致,反之则与 paddingLeft 一致
    -->
    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/red"
        android:textColor="@color/white"
        android:text="textView1"
        android:layout_margin="20sp"
        android:padding="20sp" />

    <!--
        在 java 代码中设置 margin 和 padding
    -->
    <TextView
        android:id="@+id/textView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/red"
        android:textColor="@color/white"
        android:text="textView2" />

    <!--
        visibility - 可见性
            visible - 可见(在 java 中通过 setVisibility(View.VISIBLE) 设置)
            invisible - 不可见,但是占位(在 java 中通过 setVisibility(View.INVISIBLE) 设置)
            gone - 不可见,且不占位(在 java 中通过 setVisibility(View.GONE) 设置)
    -->
    <TextView
        android:id="@+id/textView3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/red"
        android:textColor="@color/white"
        android:text="textView3"
        android:visibility="gone" />

    <!--
        alpha - 不透明度(在 java 中通过 setAlpha() 设置)
    -->
    <TextView
        android:id="@+id/textView4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/red"
        android:textColor="@color/white"
        android:text="textView4"
        android:alpha="0.3" />

</LinearLayout>

项目地址 https://github.com/webabcd/AndroidDemo
作者 webabcd

posted @ 2021-05-31 12:17  webabcd  阅读(94)  评论(0编辑  收藏  举报