当前位置: 首页 > 知识库问答 >
问题:

如何处理微调器的选择项目(Android Studio,科特林)

南门峰
2023-03-14

我想在对话框中使用微调器进行用户输入,如下所示。

我在输入对话框中实现了微调器,但我不知道如何处理微调器的选定项。我的目标是,如果用户在微调器中选择了类别并写入输入,然后按确认按钮,然后将其添加到适当的recyclerView中。

我的对话框类如下。

class input dialog(context:context){ private val dialog = dialog(context)private late init var onclick listener:ondialogclicklistener var spinner list =arrayof("운동","학과공부","개인공부및진로","기타")

fun setOnClickListener(listener : onDialogClickListener){
    onClickListener = listener
}

fun showDialog(){

    dialog.setContentView(R.layout.input_dialog)
    dialog.window!!.setLayout(WindowManager.LayoutParams.MATCH_PARENT,WindowManager.LayoutParams.WRAP_CONTENT)
    dialog.setTitle("오늘의 할 일을 입력해주세요")
    dialog.setCancelable(true)
    dialog.setCanceledOnTouchOutside(true)
    dialog.show()

    val input_editText = dialog.findViewById<EditText>(R.id.inputDlg_editText)
    dialog.spinner.adapter = spinner_adapter


    dialog.confirmBtn.setOnClickListener {
        onClickListener.onClicked(input_editText.text.toString())

        dialog.dismiss()
    }
}



interface onDialogClickListener{
    fun onClicked(input:String)
}

val spinner_adapter = ArrayAdapter(context,android.R.layout.simple_spinner_dropdown_item,spinnerList)

}

我需要你的帮助

共有1个答案

汪明德
2023-03-14

在onCreate方法中实现

 spinner.onItemSelectedListener =
        object : AdapterView.OnItemSelectedListener {
            override fun onItemSelected(
                parent: AdapterView<*>?,
                view: View,
                position: Int,
                id: Long
            ) {

                val cattype = arrayCategory!![position].toString()
                Toast.makeText(
                    context,
                    arrayCategory!![position].toString() + " selected",
                    Toast.LENGTH_SHORT
                ).show()
            }

            override fun onNothingSelected(parent: AdapterView<*>?) {}
        }
 类似资料:
  • 我无法在微调器中选择项目。当我单击微调器中的项目时,Logcat显示警告 W/InputManagerService(60):窗口已聚焦,忽略:com的聚焦增益。Android内部的看法IIInputMethodClient$存根$Proxy@406f3d90 代码示例 你能帮助我吗?

  • 我正在尝试制作一个非常简单的微调器,至少如下所示: XML: 爪哇: 我可以看到整个列表,但是一旦我点击一个项目,什么都不会发生,它根本不会显示选择,即使我使用,并且如果我尝试做我得到一个。我试着在网上搜索了很多,但没有一个解决方案似乎对我有帮助...

  • 我有一个片段,其中有一个旋转器和复选框。 布局文件need_help_fragment_layout.xml: 代码片段: 颜色代码: 如果未选择任何内容,则可以: 从微调器中选择项目时,复选框将消失: 布局文件中没有其他内容。只有约束布局以及复选框和微调器的指南。微调器和复选框在片段的onCreateView中初始化。当我从微调器中选择任何项目时,复选框将消失。请帮助。

  • 我有一个微调器,里面填充了来自XML的字符串数组: 当用户选择某个内容时,我将其保存到SharedReferences。下次打开应用程序时,如何设置该值?我只保存了值,而没有保存它在微调器列表中的位置 如果我只做旋转单位。适配器要获得适配器,如何安全地投射SpinnerAdapter!到ArrayAdapter?还是这是错误的方法?

  • 我有一个通过扩展BaseAdapter填充了自定义视图的微调器。通过重写 BaseAdapter 中的 getView() 方法填充项 我需要找到一种方法来区分下拉列表中选中的项目。我的意思是,当用户点击微调,以前选择的项目将显示在不同的颜色/背景等。 我不认为有必要查看代码,因为它与网站上的许多代码类似。

  • 我将html写成 现在我希望如果选项是1,那么它应该被选择为 请帮帮我!!!