У меня есть этот счетчик, который заполняется массивом строк. Я попытался заменить это для документа, который у меня есть в firestore, хотя результат, который я получаю, это , прежде чем приложение выйдет из строя.
Могу ли я получить некоторую помощь о том, как заполнить мой массив информацией из моего документа? Был вокруг этого на день без везения: /
благодаря
private var db = FirebaseFirestore.getInstance() private var spinnerArray: Array<Task<QuerySnapshot>> = arrayOf(db.collection("KitList").get() .addOnCompleteListener { task -> if (task.isSuccessful) { spinnerArray = task.result as Array<Task<QuerySnapshot>> //or however you get your document array for (document in task.result) { Log.d("weight05", document.id + " => " + document.data) } } else { Log.w("error", "Error getting documents.", task.exception) } }) var newKitList = mutableListOf<String>() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_new_kit_list) var addButton = addKitItemBtn val spinner = newKitItemSpinner val spinnerArrayAdapter = ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, spinnerArray) //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) spinner.adapter = spinnerArrayAdapter val kitList = newKistListView val listViewAdapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, newKitList) kitList.adapter = listViewAdapter addButton.setOnClickListener(object : View.OnClickListener { override fun onClick(v: View?) { val selectedItem = spinner.selectedItem.toString() newKitList.add(selectedItem) listViewAdapter.notifyDataSetChanged() } })
ЖУРНАЛ ОШИБОК:
0-10 16:28:48.176 23462-23462/com.reecreate.woderator2 E/AndroidRuntime: FATAL EXCEPTION: main Process: com.reecreate.woderator2, PID: 23462 java.lang.ClassCastException: com.google.firebase.firestore.QuerySnapshot cannot be cast to com.google.android.gms.tasks.Task[] at com.reecreate.woderator2.Controller.NewKitListActivity$spinnerArray$1.onComplete(NewKitListActivity.kt:27) at com.google.android.gms.tasks.zzf.run(Unknown Source) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)