Позиция счетчика 0 не вызывается во фрагменте - PullRequest
2 голосов
/ 02 августа 2020

Я создаю приложение, используя Spinner в одном фрагменте.

override fun onCreateView(
    inflater: LayoutInflater, container: ViewGroup?,
    savedInstanceState: Bundle?
): View? {
    val t=inflater.inflate(R.layout.fragment_add, container, false)
    val spinner = t.findViewById<Spinner>(R.id.spinner)
    spinner?.adapter = ArrayAdapter(activity?.applicationContext, R.layout.support_simple_spinner_dropdown_item, types) as SpinnerAdapter
    spinner?.onItemSelectedListener = object :AdapterView.OnItemSelectedListener{
        override fun onNothingSelected(parent: AdapterView<*>?) {

        }

        override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
            if(view!=null){
                val type = parent?.getItemAtPosition(position).toString()
                Toast.makeText(activity,type, Toast.LENGTH_LONG).show()
                println(type)
            }

        }

    }
    return t
}

Все работает нормально при первой загрузке. Но когда я go перехожу к другому фрагменту с помощью Tablayout и возвращаюсь к этому фрагменту, первая позиция не вызывается. Хотя, если я устанавливаю положение счетчика на 1 или 2 и go на другое и возвращаюсь, вызывается позиция 1.

Я имею в виду, что проблема возникает только в том случае, если я установил положение на 0 и go на другое Фрагмент и возвращайся. (Представление обнуляется)

Как это исправить, пожалуйста?

...