当我选择来自微调器的项目时它不显示,但是它被选中

时间:2018-04-28 08:38:41

标签: android android-studio kotlin kotlin-android-extensions kotlin-extension

我有一个活动,我必须在微调器中显示名称列表,名称在Firebase数据库中,我设法做到这一点,它工作得很好

这是它的样子: the items added in the spinner

但是在我选择一个项目之后它只是显示注意,并且它“看起来像”我没有选择任何东西 after selecting an item

我确信我选择了一个项目,因为我可以获得所选的正确itemId并执行我想要做的事情,但它只是没有出现。 我尝试更改文本颜色,但这是不可能的。 可能是我的问题?

我正在使用android studio和kotlin。

代码:

databaseRef = FirebaseDatabase.getInstance().getReference("Consultants")
    var spinnerArray: MutableList<String> = ArrayList()
    var spinnerArrayID: MutableList<String> = ArrayList()

    //filling the spinner
    databaseRef.addValueEventListener(object: ValueEventListener {
        override fun onDataChange(p0: DataSnapshot?) {
            if (p0 != null) {
                for (db: DataSnapshot in p0.children){
                    var consultantId = db.child("consultantsId").value.toString()
                    var consultantRehabName = db.child("rehabCenterName").value.toString()
                    fname = db.child("firstName").value.toString()
                    lname = db.child("lastName").value.toString()
                    if (consultantRehabName == rehabName){
                        spinnerArray.add("$fname $lname")
                        spinnerArrayID.add(consultantId)
                    }
                }
            }
        }
        override fun onCancelled(p0: DatabaseError?) {
        }
    })

    var adapter: ArrayAdapter<String> = ArrayAdapter<String>(this@DeleteConsultantActivity,
            android.R.layout.simple_spinner_item, spinnerArray)
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
    spinnerN3.adapter = adapter

    //deleting the user after selecting the item(name)
    buttonDD01.setOnClickListener({
        var nameSelectedId = spinnerN3.selectedItemId
        consultantId = spinnerArrayID[nameSelectedId.toInt()]

        databaseRef.addListenerForSingleValueEvent(object: ValueEventListener{
            override fun onCancelled(p0: DatabaseError?) {
            }
            override fun onDataChange(p0: DataSnapshot?) {
                databaseRef.child(consultantId).removeValue()
                Toast.makeText(this@DeleteConsultantActivity, "تم الحذف بنجاح", Toast.LENGTH_LONG).show()
                finish()
            }

        })
    })

0 个答案:

没有答案