¿Cómo cambiar la posición del cuadro de diálogo de alerta en la pantalla en Android?

AlertDialog en Android es un mensaje de alerta que aparece en forma de una ventana emergente que consta de cuatro elementos: un título, un mensaje, un botón positivo y un botón negativo. Se puede hacer clic en los botones positivo y negativo y se pueden programar para realizar una acción. Sin embargo, AlertDialog aparece en el centro de la pantalla cada vez que se llama. A continuación se muestra una captura de pantalla de un AlertDialog.

A través de este artículo, le mostraremos cómo puede cambiar la posición del AlertDialog en la pantalla. Siga los pasos a continuación una vez que el IDE esté listo.

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 . Demostramos la aplicación en Kotlin, así que asegúrese de seleccionar Kotlin como idioma principal al crear un nuevo proyecto.

Paso 2: trabajar con el archivo activity_main.xml

En nuestra demostración, al hacer clic en el botón, se mostrará AlertDialog . Así que agregamos un botón en nuestro archivo de diseño.

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    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=".MainActivity">
  
    <!-- AlertDialog is displayed when 
         this button is clicked -->
    <Button
        android:id="@+id/button_1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="show dialog"/>
  
</RelativeLayout>

Paso 3: trabajar con el archivo MainActivity.kt

Actividad  principal.kt Actividad principal.kt 

Kotlin

package org.geeksforgeeks.dialogpositionchange
  
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.Gravity
import android.widget.Button
import androidx.appcompat.app.AlertDialog
  
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        // Declaring and initializing a constant for 
        // Button from the layout file (activity_main.xml)
        val mButton1 = findViewById<Button>(R.id.button_1)
  
        // Declaring and initializing a 
        // constant for AlertDialog Builder
        val mBuilder = AlertDialog.Builder(this)
  
        // Attributing the AlertDialog Builder
        mBuilder.setTitle("TITLE")
            .setMessage("MESSAGE")
            .setPositiveButton("Positive"){_,_->}
            .setNegativeButton("Negative"){_,_->}
  
        // On Button click, AlertDialog is created and displayed.
        // Gravity of the AlertDialog is set to TOP to display
        // AlertDialog in the TOP of the screen.
        mButton1.setOnClickListener {
            val mAlert = mBuilder.create()
            mAlert.show()
            mAlert.window?.setGravity(Gravity.TOP)
              
            // Similarly we can change the gravity 
            // to left right and bottom.
        }
    }
}

Producción:

Puede ver que cuando se hace clic en el botón, aparece AlertDialog en la parte superior de la pantalla.

Publicación traducida automáticamente

Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *