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