رفتن به مطلب
  • 0

مشکل در ارسال اطلاعات RecyclerViewAdapter


forouzande

سوال

من اطلاعات دیتابیس را با RecyclerViewAdapter در یک BottomSheet نمایش دادم. الان می خوام متن TetxView ای که روش کلیک می شه را به همین اکتیویتی که BottomSheet داخلش هست برگردونم و ازش استفاده کنیم. چطوری می تونم چنین کاری کنم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

3 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام

خب ویو هایی رو که اضافه کردید رو می تونید به راحتی کنترل کنید :gamer2:

اگر داخل ویو هاتون داخل  ریسایکلر ویو هستن، خب به وسیله ی onBindViewHolder  شما می تونید مقدار ویو هارو بگیرید یا اینکه رویداد براشون تعریف کنید.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

چطوری می تونم مقداری رو که می گیرم به همون اکتیویتی که bottom sheet را نمایش می ده بفرستم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 11 ساعت قبل، forouzande گفته است :

چطوری می تونم مقداری رو که می گیرم به همون اکتیویتی که bottom sheet را نمایش می ده بفرستم.

یه راهش  اینه که شما یه کلاس interface بسازید و توی اکتیویتی یا فرگمنتی که میخواید مقادیر اداپتر رو بگیرید Implement کنید و در کانستراکتور(متد سازنده ی اداپتر) یک نمونه از این اینترفیس رو بگیرید و در آخر ازش استفاده کنید

به ترتیب اول یه کلاس اینترفیس میسازیم :

public interface GetValue{

	void ItemValue(String value); 
	// mitone har data type bashe : int value , String value and ...
}

دوم اکتیویتی رو ایمپلمنت میکنیم و ازش استفاده میکنیم :

public class MainActivity extends AppCompatActivity implements GetValue{
	public void onCreate(){
		adapter = new RecyclerAdapter(list , this); // this baraye vorodie interface ke sakhtim hast chon activity ro implement kardim pas this ro midim behesh
		recyclerview.setAdapter(adapter);
	}
	
	@Override
	public void ItemValue(String value){
		// inja mitoni az meghdar value estefade koni
	}


}

 

سوم ازش توی اداپتر بهش مقدار میدیم :

 

public class recyclerAdapter(){
	private GetValue mListener;
	
	public recyclerAdapter(List list , GetValue listener){
		this.mListener = listener;
	}
	
	public void onBindViewHolder(ViewHolder holder){
		holder.item.setOnClickListener(new View.onClickListener{
			public void onClick(){
				mListener.ItemValue(holder.item.getText().toString()); // inja behesh meghdar ro midim
			}
		})
	}
	

}

 

موفق باشی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...