首页 > 解决方案 > 如何从 kotlin 中的微调器返回值

问题描述

每次选择一个值时,我都尝试使用微调器中的值,但是当我选择一个值时,什么都没有发生。

我已将项目添加到微调器中,当您单击它时,其中有三个项目,您可以看到它们,但是当您选择其中一个时,没有任何反应。

这是我编写的代码,用于处理当一个被选中但它不起作用时,我做错了什么?

   override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    super.onViewCreated(view, savedInstanceState)

    fetchUserFollowings()
    //fetchNews()

    //Bind views
    val list = view.findViewById<RecyclerView>(R.id.followingRecyclerView)

    //create layout manager
    val layoutManager = LinearLayoutManager(context)
    list.layoutManager = layoutManager


    //Set Dropdown list
    val spinner = view.findViewById<Spinner>(R.id.spinner)
    val adapter = ArrayAdapter<String>(view.context, android.R.layout.simple_spinner_dropdown_item,
        android.R.id.text1, categories)
    spinner.adapter = adapter


    spinner.onItemSelectedListener = object:AdapterView.OnItemSelectedListener {
        override fun onItemSelected(
            parent: AdapterView<*>?,
            view: View?,
            position: Int,
            id: Long
        ) {
            val selected = parent?.getItemAtPosition(position)
            Log.d("TAG", selected.toString())
        }
        override fun onNothingSelected(parent: AdapterView<*>?) {
            println("nothing selected")
        }
    }
}

标签: androidkotlin

解决方案


推荐阅读