¿Quieres que al abrir tu aplicación Android aparezca automáticamente un popup con una imagen bonita (anuncio, bienvenida, oferta, etc.) y solo un botón de cerrar? En este tutorial te enseño cómo hacer un popup en Android Studio con Java de la forma más sencilla, limpia y optimizada posible. ¡Sin librerías extras y en menos de 30 líneas de código!

¿Para qué sirve este tipo de popup?

Resultado final (así quedará en tu app)

Un popup grande, centrado, con fondo transparente, imagen full width y solo una “X” para cerrar. Se ve profesional y moderno.

Cómo hacer un Popup en Android Studio

Requisitos

Paso 1: Crea el layout del popup

Crea un nuevo layout llamado dialog_popup.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
app:cardCornerRadius="20dp"
app:cardElevation="12dp">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="#FFFFFF">

<ImageView
android:id="@+id/ivPopup"
android:layout_width="match_parent"
android:layout_height="420dp"
android:scaleType="centerCrop"
android:src="@drawable/radio_image" /> <!-- ← tu imagen aquí -->

<ImageButton
android:id="@+id/btnClose"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_gravity="end"
android:layout_margin="12dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:src="@android:drawable/ic_menu_close_clear_cancel" />

</LinearLayout>
</androidx.cardview.widget.CardView>

Paso 2: El código dentro de MainActivity.java

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


mostrarPopupBienvenida();
}

private void mostrarPopupBienvenida() {
View popup = getLayoutInflater().inflate(R.layout.dialog_image, null);
AlertDialog dialog = new AlertDialog.Builder(this)
.setView(popup)
.setCancelable(false)
.create();

dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
dialog.show();

popup.findViewById(R.id.btnClose).setOnClickListener(v -> dialog.dismiss());
}

Preguntas frecuentes sobre popups en Android Studio

¿Se puede poner animación de entrada?

Sí, solo añade antes de dialog.show(): «`java dialog.getWindow().getAttributes().windowAnimations = R.style.DialogAnimation; «`

¿Funciona en tablets y pantallas grandes?

Sí, cambia el ancho a 0.9 del screen con: «`java dialog.getWindow().setLayout((int)(getResources().getDisplayMetrics().widthPixels*0.9), ViewGroup.LayoutParams.WRAP_CONTENT); «`

¿Puedo poner un botón “No volver a mostrar”?

Claro, cambia el ImageButton por un TextView o Button y guarda la preferencia.

Conclusión

Con menos de 30 líneas tienes un popup profesional que aparece al iniciar tu app Android. Es la forma más limpia y rápida de hacer un popup en Android Studio en 2025.

Portada » Cómo hacer un Popup en Android Studio que aparezca al iniciar la app (2025)