警报对话框dismiss()无法正常工作

首先,我有一个表,该表包含19列,用于处理该表的activity,用于加载表的16列的光标

fun getarrayList1(dbHelper: DBHelper,type: Int): ArrayList<String> {
    var rv = ArrayList<String>()
    var query = ""
    val db = dbHelper.writableDatabase
    if (type == TYPE_HD) {
        query = "SELECT HolidayID,HolidayType,DaysofHoliday,StartDay,StartMonth,StartYear,EndDay,Endmonth,EndYear,PresentedDay,Presentedmonth,PresentedYear,Engineer,ApproveDay,ApproveMonth,ApproveYear FROM " + DBHelper.TABLE_HOL + " WHERE Empname LIKE '%" +sel3 + "%' AND StartMonth LIKE '%" + StartMonthSpin.selectedItem.toString() + "%' AND StartYear LIKE '%" + sel4 + "%'"
    }
    Log.d("GetaRRAYLIST","Query is \n\t" + query)
    val c = db.rawQuery(query,null)
    while (c.moveToNext()) {
        rv.add(c.getString(0))
        rv.add(c.getString(1))
        rv.add(c.getString(2))
        rv.add(c.getString(3))
        rv.add(c.getString(4))
        rv.add(c.getString(5))
        rv.add(c.getString(6))
        rv.add(c.getString(7))
        rv.add(c.getString(8))
        rv.add(c.getString(9))
        rv.add(c.getString(10))
        rv.add(c.getString(11))
        rv.add(c.getString(12))
        rv.add(c.getString(13))
        rv.add(c.getString(14))
        rv.add(c.getString(15))
    }
    c.close()
    return rv
}

数据加载完美,我的意思是数据加载器没有问题。我使用在Alert对话框中加载的数据,为arraylist中的数据创建了一个计数器,将该计数器除以16(列数)。如果结果为1,则将发生某些事情;如果结果为2,则将发生另一件事

计数器== 1

    fun Counter1() {
        val builder = AlertDialog.Builder(this@HolidaysPage)
        builder.setTitle("تحذير بخصوص الأجازة")
        builder.setPositiveButton("استكمال الأجازة") { dialog,which ->
            dialog.dismiss()
        }`
builder.setNegativeButton("استعراض الأجازة"){dialog,which ->
                    Toast.makeText(applicationContext,"سنقوم بغلق نافذة الأجازة لاستعراض البيانات",Toast.LENGTH_SHORT).show()
                    intent.putExtra("Counter",Counter.toString())
                    intent.putExtra("HolidayID",HolidaysDetails.get(0))
                    intent.putExtra("HolidayType",HolidaysDetails.get(1))
                    intent.putExtra("Days",HolidaysDetails.get(2))
                    intent.putExtra("StartDay",HolidaysDetails.get(3))
                    intent.putExtra("StartMonth",HolidaysDetails.get(4))
                    intent.putExtra("StartYear",HolidaysDetails.get(5))
                    intent.putExtra("EndDay",HolidaysDetails.get(6))
                    intent.putExtra("Endmonth",HolidaysDetails.get(7))
                    intent.putExtra("EndYear",HolidaysDetails.get(8))
                    intent.putExtra("PresentedDay",HolidaysDetails.get(9))
                    intent.putExtra("Presentedmonth",HolidaysDetails.get(10))
                    intent.putExtra("PresentedYear",HolidaysDetails.get(11))
                    intent.putExtra("Engineer",HolidaysDetails.get(12))
                    intent.putExtra("ApproveDay",HolidaysDetails.get(13))
                    intent.putExtra("ApproveMonth",HolidaysDetails.get(14))
                    intent.putExtra("ApproveYear",HolidaysDetails.get(15))
                    intent.putExtra("EmpName",sel3)
                    startactivity(intent)}
        val dialog: AlertDialog = builder.create()
        dialog.show()
    }`
        builder.setNeutralButton("إلغاء") { _,_ ->
            finish()
        }

如果我单击“中性”按钮,输出将出现在子活动中。 主要问题是,当我单击肯定按钮时,我什么也没做,只是关闭了对话框,但是我必须单击16次(作为加载的列数)才能关闭对话框。

任何人都可以帮助我解决此问题吗?考虑一下,如果Counter == 2,则加载的数据将不仅是32,而且是32,因此我必须在肯定按钮上单击32次以关闭该对话框。

xrf0827 回答:警报对话框dismiss()无法正常工作

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3039388.html

大家都在问