Spinner внутри фрагмента с использованием kotlin: ни одна из следующих функций не может быть вызвана с предоставленными аргументами - PullRequest
0 голосов
/ 05 февраля 2020

Я пытался поместить спиннер внутри фрагмента, кодируя kotlin, но пока не сделал этого.

Вот как я пытался.

Надеюсь, вы, ребята, могли бы помочь мне.

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        val binding: RutinaBinding =
            DataBindingUtil.inflate(inflater, R.layout.rutina, container, false)
        binding.check.setOnClickListener{view : View ->
            Navigation.findNavController(view).navigate(R.id.action_rutina_to_menu_final)

        }

        val numero_series = resources.getStringArray(R.array.number_series_string)

        if (binding.numSeries != null) {
            val adapter = ArrayAdapter<String>(this ,
                android.R.layout.simple_spinner_item, numero_series)
            binding.numSeries.adapter = adapter


        return binding.root
    }

}

1 Ответ

4 голосов
/ 05 февраля 2020

ArrayAdapter принимает Context в качестве первого параметра, но Fragment не является Context. Вы должны использовать метод requireContext(), чтобы получить Context

val adapter = ArrayAdapter<String>(requireContext(),
            android.R.layout.simple_spinner_item, numero_series)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...