旋转器没有打开

问题描述 投票:0回答:2

当我点击它下拉时,我的微调器没有打开。任何帮助?我的项目列表位于字符串资源中。

class CreateIssueFragment : Fragment() {

var spinner: Spinner? = null
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
    val rootView: View = inflater.inflate(R.layout.fragment_create_issue, container, false)
    spinner = activity?.issueTypesSpinner
    loadSpinner()
    return rootView
}

private fun loadSpinner() {
    ArrayAdapter.createFromResource(context, R.array.issue_types_array, android.R.layout.simple_spinner_item)
            .also { adapter ->
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
                spinner?.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
                    override fun onItemSelected(parent: AdapterView<*>, view: View, position: Int, id: Long) {
                        parent.getItemAtPosition(position).toString()
                    }

                    override fun onNothingSelected(parent: AdapterView<*>) {
                    }
                }
                spinner?.adapter = adapter

            }
}
}
android android-fragments kotlin android-spinner
2个回答
0
投票

尝试像这样替换:

yourSpinner?.onItemSelectedListener = object : AdapterView.OnItemSelectedListener{
    override fun onNothingSelected(parent: AdapterView<*>?) {

    }

    override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {

    }

}

0
投票
class CreateIssueFragment : Fragment() {


override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
    val rootView: View = inflater.inflate(R.layout.fragment_create_issue, container, false)
    return rootView
}

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

}

private fun loadSpinner() {
    val list = context?.resources?.getStringArray(R.array.issue_types_array)


    ArrayAdapter.createFromResource(context, R.array.issue_types_array, android.R.layout.simple_spinner_item)
            .also { adapter ->
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
                issueTypesSpinner?.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {

                    override fun onItemSelected(parent: AdapterView<*>, view: View, position: Int, id: Long) {
                        parent.getItemAtPosition(position)
                    }

                    override fun onNothingSelected(parent: AdapterView<*>) {
                    }
                }
                issueTypesSpinner?.adapter = adapter
            }

}

}
© www.soinside.com 2019 - 2024. All rights reserved.