Kotlin微调器使用的片段

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

我是Kotlin的新手,我只是想弄清楚如何在片段中使用微调器。

所以我猜下面的代码是我应该如何初始化微调器,但是如何将其指向R.array中的预制字符串,以及如何在单击按钮时捕获选择。谢谢。

class paychart : Fragment() {
    private lateinit var paychartview: View

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        // Inflate the layout for this fragment
        paychartview = inflater.inflate(R.layout.fragment_paychart, container, false)
    }
val yearspinner = paychartview.findViewById<Spinner>(R.id.spinneryear)
}
android kotlin fragment spinner
1个回答
0
投票

使用ArrayAdapter.createFromResource

override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        // Inflate the layout for this fragment
        val paychartview = inflater.inflate(R.layout.fragment_paychart, container, false)
        val spinner = paychartview.findViewById<Spinner>(R.id.spinneryear)

        spinner?.adapter = ArrayAdapter.createFromResource(activity, R.array.string_array, android.R.layout.simple_spinner_item) as SpinnerAdapter
        spinner?.onItemSelectedListener = object :AdapterView.OnItemSelectedListener{
             override fun onNothingSelected(parent: AdapterView<*>?) {
                //..
             }

             override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
                val item = parent?.getItemAtPosition(position).toString()
                //..
             }
     }

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