когда я выбираю элемент из счетчика, он не отображается, но выбирается - PullRequest
0 голосов
/ 28 апреля 2018

У меня есть действие, в котором мне нужно было показать список имен в счетчике, имена находятся в базе данных Firebase, и мне удалось это сделать, и это прекрасно работает

вот как это выглядит: предметы, добавленные в блесну

но после того, как я выбрал элемент, он просто показывает, и, похоже, я ничего не выделил после выбора пункта

Я уверен, что я выбрал 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()
            }

        })
    })
...