Друзья, всем привет!
Помогите разобраться в следующей ситуации пожалуйста!
Я нахожусь в homeFragment, из него я хочу запустить contentFragment. Все запускается, но фрагменты накладываются друг на друга! Как видно на скриншоте идет наслоение. На одном фрагменте TextView показывает Home Fragment а на втором Я крутой контент.
Вот код фрагмента из которого вызывается другой
class HomeFragment: Fragment() {
private lateinit var Quotes: TextView
private var _binding: FragmentHomeBinding? = null
private val binding: FragmentHomeBinding
get() = _binding ?: throw RuntimeException("FragmentHomeBinding is null")
override fun onAttach(context: Context) {
super.onAttach(context)
}
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
_binding = FragmentHomeBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initViews(view)
addListeners(view)
}
private fun initViews(view: View){
Quotes = view.findViewById(R.id.textViewQuotes)
}
private fun addListeners(view: View){
view.setOnClickListener {
if (binding.textViewQuotes.id.toString() == R.id.textViewQuotes.toString()){
requireActivity().supportFragmentManager.beginTransaction()
.replace(R.id.homeFragment, ContentFragment.newInstance())
.commit()
}
}
}
}
А вот код фрагмента, который вызывается
class ContentFragment: Fragment() {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.content_fragment, container, false)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
}
companion object {
fun newInstance(): Fragment {
return ContentFragment()
}
}