Hocam öncelikle aktivity nin xml sayfasın da ki bütün öğeleri ayrı bir constraint layout içine koyun yine aynı xml sayfası içine frame layout koyun. frame layout visibility si gone olsun sonrasında kod tarafında butona basıldığında activity öğelerini gone yapıp frame layoutunuz visible olacak yani biraz karışık gibi görünüyor ama en basit yol ile böyle yapabilirsiniz. Benim düşüncem de fragmentler ile çalışmayı bilmiyorsanız uğraşmayın biraz daha sıkıntılı ve uğraştırıcı oluyor. Bilginiz olsun basit yapı ile bu şekilde

loginRoot ögesi activity içinde bulunan ögeler
loginContainer ise fragmentimin yerleştiği bölüm
butona basıldığında activity xml içindekiler kaldırılır ve fragment açılır


geri butonu olayını da düzeltmeyi unutmayın. geri butonu basıldığında fragment = gone, activity = visible olacak
Ama terkar söylüyorum fragment olayı çok karışık ben kullanmıyorum açıkcası çok aşırı sayfanız yok iste activitl'ler ile çalışmak yeni öğrenenler için çok daha iyi olur ben öyle yapıyorum. Kolay gelsin