How to programmatically toggle ImageView visibility in Kotlin

In this android kotlin source code example, we are going to programmatically toggle ImageView visibility in Kotlin

You can copy and adopt this source code example to your Kotlin android project without reinventing the wheel.

Below is a step by step source code to programmatically toggle ImageView visibility in Kotlin

activity_main.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:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".imageView.ImageViewActivity16">

    <ImageView
        android:id="@+id/imagePreview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/profilepic"
        android:layout_marginTop="10dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"/>

    <Button
        android:id="@+id/visible"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Set Visible"
        android:background="@color/colorAccent"
        android:textColor="@color/white"
        android:layout_marginBottom="2dp"
        app:layout_constraintBottom_toTopOf="@id/invisible"/>

    <Button
        android:id="@+id/invisible"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Set Invisible"
        android:background="@color/colorAccent"
        android:textColor="@color/white"
        app:layout_constraintBottom_toBottomOf="parent"/>


</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.kt

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.ImageView
import com.bluapp.kotlinview.R

class ImageViewActivity16 : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_image_view16)
        val imagePreview = findViewById<ImageView>(R.id.imagePreview) as ImageView
        val visibleBtn = findViewById<Button>(R.id.visible) as Button
        val invisibleBtn = findViewById<Button>(R.id.invisible) as Button
        visibleBtn.setOnClickListener { imagePreview.visibility = View.VISIBLE }
        invisibleBtn.setOnClickListener { imagePreview.visibility = View.INVISIBLE }
    }
}

If you have any question or suggestions kindly use the comment box or you can contact us directly through our contact page below.

Add a Comment