آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

notifysetchanged کردن یک کلاس ریسایکلر آداپتر از داخل کلاس اکتیویتی

هادی بی غم  9 سال پیش  9 سال پیش
0 0

سلام 

یک ریسایکلر ویو دارم که در اکتیویتی اول هست با زدن روی هر آیتم وارد اکتیویتی دوم میشه و در اکتیویتی دوم میشه اون آیتم رو لایکش کرد در زمان زدن کلید Back برمیگرده به اکتیویتی اول ، حالا من میخوام  کاربر  ببینه که لایکی که زده روی آیتم ریسایکلر ویو  تاثیر گذاشته و لایک شده 

دوستان یعنی می خوام از داخل کلاس اکتیویتی اول در زمان Resume شدن متد  notifyItemChanged   رو فقط برای یک position در کلاس آداپتر صدا بزنم ،

لطفا منو راهنمایی کنید ، متشکرم 

 

+1 0
vaghti barmigarde be activitye awal mage dobare safhe refresh nemishe o be DB query nemizane ?age tu activitye dovom bade like kardan databaset ro update koni vaghti barmigardi be activitye awal on item bayad like khorde bashe dg (9 سال پیش)
+1 0
اگه دیتابیس آنلاینه که باید هر دفه که وارد یه آیتم میشی و دوباره خارج میشی دیتابیس ریلود بشه که اصلا کار خوبی نیست اگرم دیتابیس آفلاینه وقتی که برگردی به صفحه قبلیت دیتابیس از اول لود میشه و اون آیتمی که روش کلیک شده گم میشه بهترین کار اینه که آیدی اون آیتمی که روش کلیک میشه رو به اکتیویتی جدید بفرستی و همچنین موقعیت اسکرول اون آیتم رو ، که وقتی برگشتی و دیتابیس ریلود شد ، گم نشه (9 سال پیش)
+1 0
khob vase inke gom nashe (offline DB) position ono befrestid be activite awal , va baraye recycler view "scroll to position(pos)" ro bezanid.injori ham load shode hast ,ham scroll shode be positione khas,va chon page reload shode dg be notify kardan niazi nist (9 سال پیش)
0 0
دوستان اکتویتی دوم finnish میشه عمدا این کارو کردم که اکتیویتی اول دوباره رفرش نشه من می خوام بدونم چطور از داخل متد onResume که در اکتیویتی اول هست متد notifysetchanged-->position خاصی رو صدا بزنم (9 سال پیش)
+1 0
زمانی که داری به اکتیویتی دوم میری position رو براش ارسال کن و همچنین از startActivityForResult استفاده کن. موقع برگشت از طریق intent یه پیام به اکتیویتی اولت ارسال کن همراه با اون پوزیشن. یعنی باید بیای متد onBackPressed رو توی اکتیویتی دوم اورراید کنی و خودت دستی اکتیویتی رو finish کنی و مثلا اگر لایک کرده بود یا کلا تغییری داده بود که در اکتیویتی اول باید مشاهده بشه RESULT_OK رک به عنواننتیجش در نظر میگیری. از اون ور توی اکتیویتی اول باید متد onActivityResult رو اورراید کنی. کلا در موردش سرچ کن کدهاش هست حال ندارم خودم بگردم واست کد زیاد هست در مورد startActivityForResult سرچ کن (9 سال پیش)
0 0
مسعود جان تا اینجاشو درست انجام داده بودم مشکل من صدا زدن notifysetchanged هست که داخل کلاس آداپتر میشه صداش زد اما داخل کلاس کلاس اکتیویتی نمیشه (9 سال پیش)
0 0
به خاطر زیاد بودن داده های درون دیتابیس نمی خوام کل ریسایکلر دوباره رفرش بشه فقط می خوام یک position رفرش بشه که با notifyItemSetchanged باید تغییرش بدم اما نمی اونم توی متد onResume کلاس اکتیویتی صداش بزنم (9 سال پیش)
+1 0
شما میتونی از متد notifyItemChanged(position) استفاده کنی .اینحوری فقط یک سطر از دیتابیست اپدیت میشه . (9 سال پیش)
+1 0
شما میتونی از متد notifyItemChanged(position) استفاده کنی .اینحوری فقط یک سطر از دیتابیست اپدیت میشه . (position) adapter.notifyItemChanged (9 سال پیش)
+1 0
شما بالاخره adapter رو توی اکتیویتی باید تعریف کرده باشی دیگ. خب تابع notifyItemSetchanged رو روش اجرا کن. اینجوری adapter.notifyItemSetchanged (9 سال پیش)
0 0
دوستان توجه نکردید من جوابو دیشب پایین گذاشتم خودم !!! بازم مرسی ازتون (9 سال پیش)
0 0
:D (9 سال پیش)
 برای این سوال 1 پاسخ وجود دارد. مشاهده پاسخ صحیح
پاسخ به سوال 
هادی بی غم  9 سال پیش
0 0

 پاسخ صحیح

دوستان به راحتی فقط با همین خط درست شد ;)

 adapter.notifyItemChanged(G.position,G.selected);

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .