Каковы параметры для AlertDialog.Builder ()? - PullRequest
0 голосов
/ 29 сентября 2018

Итак, я работаю над созданием моего первого тестового приложения с использованием Android Studio и Kotlin.Кроме того, я просто не должен использовать Kotlin при разработке приложений?Мне сказали использовать Kotlin .. В любом случае, вернемся к моей проблеме.

Я хотел знать, какие параметры были для AlertDialog.Builder(this) Я знаю, что это должно быть this или this@mainactivity, но я не знаюзнать, что это за параметр.Нет смысла, и я не смог найти никаких документов.

1 Ответ

0 голосов
/ 01 октября 2018

Как насчет пользовательского диалога оповещения, что да, это код котельной плиты, но, о, стиль!

Вам нужен этот XML

<?xml version="1.0" encoding="utf-8"?>

<ImageView
    android:id="@+id/imgDI"
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:layout_marginLeft="10dp"
    android:layout_marginTop="10dp"
    android:src="@drawable/caution" />

<TextView
    android:id="@+id/tvDAT"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="80dp"
    android:layout_marginTop="30dp"
    android:text="Delete Note"
    android:textColor="@color/color_Black"
    android:textSize="20sp"
    android:textStyle="bold" />

<TextView
    android:id="@+id/tvDAC"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="20dp"
    android:layout_marginTop="80dp"
    android:gravity="center"
    android:text="Do You Want to DELETE this Note"
    android:textColor="@color/color_Black"
    android:textSize="18sp"
    android:textStyle="bold" />

<Button
    android:id="@+id/btnYES"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="240dp"
    android:layout_marginTop="110dp"
    android:background="@color/color_Transparent"
    android:text="DELETE"
    android:textColor="@color/color_deepBlue"
    android:textSize="18sp"
    android:textStyle="bold" />

<Button
    android:id="@+id/btnNO"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="20dp"
    android:layout_marginTop="110dp"
    android:background="@color/color_Transparent"
    android:text="CANCEL"
    android:textColor="@color/color_deepBlue"
    android:textSize="18sp"
    android:textStyle="bold" />

вот кнопка, которая вызывает представление

        btnDelete.setOnClickListener{
        if(etPerson.text.toString().equals("")){
            message("No Match Found")
            return@setOnClickListener
        }
        doCustom()

    }

А теперь doCustom IT немного напугать, чтобы вызвать другую функцию

    fun doCustom() {
 /* This method uses the custom_dialog.xml file created for greater control over
the styling of the Custom Alert Dialog for various screen sizes and to be
able to set the text size of the dialog message text
*/

 val makeDialog = LayoutInflater.from(this).inflate(R.layout.custom_dialog,null)
 val mBuilder = AlertDialog.Builder(this).setView(makeDialog)
 val mAlertDialog = mBuilder.show()

 val btnYES = makeDialog.findViewById<Button>(R.id.btnYES)
 val btnNO = makeDialog.findViewById<Button>(R.id.btnNO)
 mAlertDialog.setCancelable(false)

 btnYES.setOnClickListener {
     removePerson()
     mAlertDialog.dismiss()
 }

 btnNO.setOnClickListener {
     message("Record NOT Deleted")
     etPerson.setText("")
     Timer().schedule(800){
         thisACTIVITY()
     }
     mAlertDialog.dismiss()
 }
 mAlertDialog.show()
}

private fun removePerson() {

    val dbHandler = DBHelper(this)

    val result = dbHandler.deletePerson(etPerson.text.toString())

    if (result) {
        etPerson.setText("")
        message("Record Removed")
        Timer().schedule(1000){
            thisACTIVITY()
        }
    }else{
        etPerson.setText("NO MATCH -> click View Person List")
        btnViewList.visibility = View.VISIBLE
        btnEdit.visibility = View.INVISIBLE
        btnDelete.visibility =View.INVISIBLE
        btnAdd.visibility = View.INVISIBLE
        message("NO Match Found")
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...