android: 设置view的可见性

一,代码:

说明:

  • View.VISIBLE‌:表示View是可见的,即显示在屏幕上。
  • View.INVISIBLE‌:表示View是不可见的,但仍然占据空间。
  • View.GONE‌:表示View是不可见的,并且不占据空间‌1

xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".activity.ToolsActivity">

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="162dp"
        android:layout_marginEnd="159dp"
        android:layout_marginBottom="631dp"
        android:text="打电话"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="114dp"
        android:layout_marginTop="60dp"
        android:layout_marginEnd="97dp"
        android:layout_marginBottom="397dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/button"
        app:srcCompat="@drawable/a" />

    <Button
        android:id="@+id/vbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="172dp"
        android:layout_marginTop="64dp"
        android:layout_marginEnd="149dp"
        android:layout_marginBottom="285dp"
        android:text="可见性"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/imageView" />

</androidx.constraintlayout.widget.ConstraintLayout>

java

        //给按钮增加点击事件
        Button vButton = findViewById(R.id.vbutton);
        vButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                ImageView imageView = findViewById(R.id.imageView);

                //imageView.setVisibility(View.GONE);

                if (imageView.getVisibility() == View.INVISIBLE) {
                    imageView.setVisibility(View.VISIBLE);
                } else {
                    imageView.setVisibility(View.INVISIBLE);
                }
            }
        });

二,测试效果:

 

posted @ 2025-05-01 09:23  刘宏缔的架构森林  阅读(39)  评论(0)    收藏  举报