Soru & Cevap

Tüm RecyclerView İtem'ların tek bir activity'de gö ...

26.11.2015 - 09:32

Merhaba arkadaşlar, yapmakta olduğum uygulamada 20 adet row içeren bir RecyclerView var. Kullanıcı her bir Row'a tıkladığında daha detaylı bilgi içeren Detail Activity karşısına gelecek. Değişen sadece içerik olacak. Aynı yemek tarifi uygulamaları gibi. Tek bir activity ve layout kullanarak bunu nasıl yapabilirim?

Şimdiden ilgilendiğiniz için teşekkürler...

19 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user enesdokuz
enesdokuz
27.11.2015 - 02:38

Activityler arası veri aktarımına hiç gerek yok bence her bir ekranını bir RelativeLayoutla tanımlayarak buton tıklamalarında giriş ekranının görünürlüğünü GONE yaparak tüm olayı çözebilirsin. 
İyi Çalışmalar

picture-28812-1452251417.jpg
umutonur
26.11.2015 - 05:36

Şimdi benim anladığım kadarıyla;

bitane RecyclerViewActivity'n var. Bunda yaptığın seçime göre DetailActivity açılmasını ve yine yaptığın seçime göre DetailActivity'nin içeriğinin belirlenmesini istiyorsun.

Eğer buraya kadar bir yanlış anlaşılma yoksa; 

"Activity'ler arası veri aktarımı" konusunu araştırmalısın.. 

Böylece RecyclerViewActivity'n de yaptığın seçime göre DetailActivity'ne veri gönderebilir ve gönderdiğin içerikleri gösterebilirsin.. Biraz somutlaştıracak olursak; 

Listemizde 3 tane elemanımız olsun. (Bunlar: Yemek1,Yemek2,Yemek3)

ve ilk Activity'mizde de 2 tane String tipi değişkenimiz olsun (YemekAdi,YemekTarifi)

ve Listede her hangi bir seçim yaptığımızda bu iki String değişkeni seçime göre bir değer alsın : 

if (secim == Yemek1) {
    YemekAdi = "Birinci Yemek";
    YemekTarifi = "Birinci yemek biraz biberli olsun";
}
else if (secim == Yemek2) {
.
.
.


gibi.. Daha sonra bu değişkenleri ikinci Activity'ne yolla..

ikinci Activity'nde de bu değişkenleri kullan..

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContenView(R.layout.DetailActivity);
    textView = (R.id.yemek_adi);
    .
    .
    .
    //tanımlamarı yapıp verileri aldıktan sonra
    textView.setText(YemekAdi);
    .
    .
}

gibi bir yöntem izleyebilirsin..

Umarım anlatabilmişimdir..

kafanın karıştığı bir nokta olursa yine yardımcı olmaya çalışırım.

Ahmet Ziya YAVUZ
09.12.2015 - 12:01
Umut Abi size bir şey sormak istiyorum. Ben bunu çok araştırdım ama çözüm bulamadım. Yapmış olduğum uygulamaya bakarsanız anlarsınız. https://play.google.com/store/apps/details?id=com.astrobotech.mscientist.muslimscientists Şimdi listedeki her birey için ayrı Detail Activity oluşturdum. Bu tam bir hammallık işi oluyor bir ton bilgiyle uğraşmak yorucu. Bunun yerine tek bir Detail Activity oluşturup, String.xml de tanımladığım String-Array'den de bilgiyi çekmek mümkün müdür? Bu sayede her kişi için ayrı Activity açmaya gerek kalmaz Ama nasıl yapabilirim???