• 09-02-2022, 12:03:21
    #1
    Herkese selamlar. Bir proje üzerinde çalışıyorum ve takılıp kaldığım bir kısım var. HomeFragment sayfasında bir recyclerview mevcut. Bu recyclerviewin herhangi bir elemanına tıklandığında 2.ci bir recyclerview gelmesi gerekiyor ve en son 1 ve 2 recyclerviewden aldığım verileri 3.bir tasarımda göstermem gerekiyor. Lakin bu işlemlerin hepsi aynı fragment içerisinde olması gerektiğinden ve slider mantığında olması gerektiğinden dolayı takılıp kaldım. Bu konuda bilgisi olan varsa paylaşırsa sevinirim.
  • 09-02-2022, 15:15:30
    #2
    2 recyclerview'ı aynı yerde göstermekten mi bahsediyorsunuz? eğer öyleyse tab layout veya alertdialog ile denenebilir. veya fragmenti ikiye bölüp paylaştırabilirsiniz.
  • 09-02-2022, 18:24:44
    #3
    Adapter ile tek recyclerview'da verileri yenileyin. Örneğin 2. itema tıklandığında recyclerview içerisine başka verileri set edin. Bu bir çözüm olabilir aksi halde @yavuzmz; de dediği gibi tablayout kullanabilirsiniz. Ben de tab layout ile kullanıyorum farklı içerikleri aynı anda göstermem gerektiği için.
  • 10-02-2022, 01:31:14
    #4
    sharedpreferences ile flag tanımlayın mesela:
    SehirlerFragment ilk açıldığında flag 'sehirler' yollayın recyclerviewin içine şehirleri döndürün.
    sonra bir şehire tıklandığında 'ilceler' diye flag yollayın ve aynı fragmenti yeniden başlatın. bu sefer ilçeleri döndürün.
  • 10-02-2022, 16:03:43
    #5
    Açıkcası en büyük sorun adapter içerisinden fragment'e ulaşamamaktı. EventBus kütüphanesini kullanarak sorunu çözdüm.Cevap veren herkese çok teşekkürler.

  • 10-02-2022, 17:09:51
    #6
    batuhanyalcinn adlı üyeden alıntı: mesajı görüntüle
    Açıkcası en büyük sorun adapter içerisinden fragment'e ulaşamamaktı. EventBus kütüphanesini kullanarak sorunu çözdüm.Cevap veren herkese çok teşekkürler.

    Hocam kütüphane kullanmak yerine adaptere nesne olarak fragmenti gönderebilirdiniz.

    Örnek: CellRecyclerView(fragment: Fragment)

    Daha sonra recyclerview ı cagıracağınız fragment içinden this diyerek verebilirsiniz.