Ver en Android es un área de la pantalla que es responsable del dibujo y el manejo de eventos. El diseño es una colección de vistas. Consiste en algún contenido como imágenes, texto, un botón o cualquier cosa que pueda mostrar una aplicación de Android. En este artículo, veremos cómo mostrar y ocultar una vista en una aplicación de Android. Tenemos que crear una vista que se ocultará y/o se hará visible al hacer clic en un botón.
Implementación paso a paso
Paso 1: crea un nuevo proyecto en Android Studio
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . El código para eso se proporcionó tanto en Java como en el lenguaje de programación Kotlin para Android.
Paso 2: Trabajando con activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml .
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" android:background="#FFFFFF" tools:context=".MainActivity"> <!-- button to show or hide view --> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:backgroundTint="#FF00FF00" android:text="Hide/Show" android:textColor="#FFFFFF" app:layout_constraintBottom_toTopOf="@+id/view" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <!-- view to be shown or hidden on button click --> <TextView android:id="@+id/view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="Welcome To GeeksForGeeks" android:textColor="#FF00FF00" android:textSize="40sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
Paso 3: trabajar con el archivo MainActivity
Vaya al archivo MainActivity y consulte el siguiente código. A continuación se muestra el código para el archivo MainActivity. Se agregan comentarios dentro del código para comprender el código con más detalle.
Java
import android.graphics.Color; import android.graphics.drawable.ColorDrawable; import android.os.Bundle; import android.view.View; import android.view.animation.TranslateAnimation; import android.widget.TextView; import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { private TextView view; private boolean opened; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); view = findViewById(R.id.view); view.setVisibility(View.INVISIBLE); // for changing the background color of title bar ActionBar aBar = getSupportActionBar(); ColorDrawable cd = new ColorDrawable(Color.parseColor("#FF00FF00")); if (aBar != null) { aBar.setBackgroundDrawable(cd); } // using setOnclickListener on button to do hide and show findViewById(R.id.button).setOnClickListener(v -> { if (!opened) { // visibility of view view.setVisibility(View.VISIBLE); TranslateAnimation animate = new TranslateAnimation(0, 0, view.getHeight(), 0); // duration of animation animate.setDuration(500); animate.setFillAfter(true); view.startAnimation(animate); } else { view.setVisibility(View.INVISIBLE); TranslateAnimation animate = new TranslateAnimation(0, 0, 0, view.getHeight()); animate.setDuration(0); view.startAnimation(animate); } opened = !opened; }); } }
Kotlin
import android.graphics.Color import android.graphics.drawable.ColorDrawable import android.os.Bundle import android.view.View import android.view.animation.TranslateAnimation import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { private lateinit var view: TextView private var opened: Boolean = false override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) view = findViewById(R.id.view) view.visibility = View.INVISIBLE // for changing the background color of title bar val aBar = supportActionBar val cd = ColorDrawable(Color.parseColor("#FF00FF00")) aBar?.setBackgroundDrawable(cd) // using setOnclickListener on button to do hide and show findViewById<View>(R.id.button).setOnClickListener { if (!opened) { // visibility of view view.visibility = View.VISIBLE val animate = TranslateAnimation(0F, 0F, view.height.toFloat(), 0F) // duration of animation animate.duration = 500 animate.fillAfter = true view.startAnimation(animate) } else { view.visibility = View.INVISIBLE val animate = TranslateAnimation(0F, 0F, 0F, view.height.toFloat()) animate.duration = 0 view.startAnimation(animate) } opened = !opened } } }
Producción:
Publicación traducida automáticamente
Artículo escrito por its_codezada17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA