помогите как передать List через bundle сейчас передаются данные и принимаются но только данные одной страны даже если нажал на другую страну

Рейтинг: 0Ответов: 0Опубликовано: 22.08.2023
private fun onClick(model: CountryModel) {
        val fragment = InfoFragment()
        val bundle = Bundle()
        bundle.putStringArrayList("country", ArrayList(model.country))
        fragment.arguments = bundle

        requireActivity().supportFragmentManager.beginTransaction()
            .replace(R.id.fr_container, fragment)
            .addToBackStack(null)
            .commit()
    }
}    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        initView()
    }

    private fun initView() {
        binding.rv.adapter = adapter
        val selectedCountries = arguments?.getStringArrayList("country")
        selectedCountries?.let { countries ->
            viewLifecycleOwner.lifecycleScope.launchWhenCreated {
                for (selectedCountry in countries) {
                    Log.d("InfoFragment", "Calling loadPlayer for country: $selectedCountry")
                    viewModel.loadPlayer(selectedCountry)
                }
                viewModel.football.collect { state ->
                    Log.d("InfoFragment", "Received football state: $state")
                    adapter.submitList(state.player)
                } 

"Germany" -> listOf( PlayerModel(1, "Player1_Germany", 25, R.drawable.qatar, R.drawable.qatar, "Germany"),

    )
    "England" -> listOf(
        PlayerModel(1, "Player1_England", 24, R.drawable.qatar, R.drawable.qatar, "England"),

Ответы

Ответов пока нет.