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

فراخوانی یک کلاس

alireza  11 سال پیش  11 سال پیش
0 0

سلام 

ببخشید ممکنه که یک کلاس رو جای دیگه ای از برنامه اجرا کنیم درواقع ببینید می خوام با رخ دادن یک اتفاق اکتیویتی که توش هستم رفرش بشه و تغییرات بدون اینکه از یک اکتیویتی به اکتیویتی دیگه برم و برگردم با تغییر یک مقدار رفرش بشه ؟ !

 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
سجاد زهره ای  11 سال پیش
+1 0

سلام اگه بخواین Activity رو refresh کنید از کد زیر استفاده کنید

  finish();
startActivity(getIntent());
0 0
خیلی ممنون بابت پاسخی که دادین ولی یه سوال این کد رو باید انتهای اکتیویتی که می خوام رفرش بشه بنویسم چه جوریه نحوه استفاده ازش ؟ من در واقع می خوام وقتی مثلا از دیتا بیس یک داده رو دریافت کردم مثلا true اونوقت مجددا ActivityMain دوباره رفرش بشه و نکته ای که هست من این داده رو در کلاس G دریافت می کنم و می خوام اگر این داده true بود ActivityMain ام دوباره اجرا بشه ؟ (11 سال پیش)
+1 0
نگاه من کلیت کاری که دارین انجام میدینو نمیدونم مثلا اگه لیست ویو داشته باشین قضیه فرق داره یا اینکه مثلا گرید ویو داشته باشین بازم فرق داره ولی به طور کلی شما هروقت اطلاعات رو گرفتین این کد رو فراخوانی کنید!برای تست این کد رو داخل رویداد یه دکمه بزارین تا متوجه بشین چه اتفاقی میوفته (11 سال پیش)
0 0
امتحان کردم توی یک رویداد دکمه جواب داد ولی ببینید من یه لیست ویو دارم که اطلاعات رو از دیتابیس گوشی که توی یک کلاس دیگه ساخته شده می گیره و به صورت یک لیست ویو نمایش می ده حالا ممکنه اطلاعات دیتا بیس من تغییر کنه مثلا یک ردیف بهش اضافه بشه وقتی این اضافه شد من یک متغیر رو true می کنم می خوام با true شدن این متغیر لیست ویوی من اپدیت بشه درواقع حالا شاید اون true کردنه کار بی خودی باشه و به درد نخوره ولی در کل کاری که می خوام انجام بدم اینه کلاسی که لیست ویوی من رو از اطلاعات دیتابیس می سازه رو یکبار دیگه اجرا کنم ؟ .. (11 سال پیش)
0 0
در واقع ببینید من چیزی که می خوام انجام بدم خیلی خلاصه اینه توی یک دستور شرط در کلاس مثلا G بگم کلاس ActivityMain رو یکبار دیگه اجرا کن ! (11 سال پیش)
0 0
در واقع ببینید من چیزی که می خوام انجام بدم خیلی خلاصه اینه توی یک دستور شرط در کلاس مثلا G بگم کلاس ActivityMain رو یکبار دیگه اجرا کن ! (11 سال پیش)
+1 0
بنظر من اصلا شما نباید اکتیویتی رو refresh کنی!مگه شما adapter نداری؟ (11 سال پیش)
0 0
چرا دارم خب باید چکار کنم ؟ (11 سال پیش)
0 0
چرا دارم ! خب باید چکار کنم ؟ (11 سال پیش)
0 0
چرا دارم ! خب باید چکار کنم با ادپتر ؟ (11 سال پیش)
0 0
چرا دارم ! خب باید چکار کنم با ادپتر ؟ (11 سال پیش)
پاسخ به سوال 
alireza  11 سال پیش
0 0

چرا دارم ! خب باید چکار کنم با ادپتر ؟ 

+1 0
نگاه باید از این کد استفاده کنی هرموقع که اطلاعات رو گرفتی adapter.notifyDataSetChanged() (11 سال پیش)
0 0
خب من این رو قبلا امتحان کردم ولی جواب نمی ده و چیزی به لیست ویوی من اضافه نمی کنه تا یه بار از اکتیوی خارج و دوباره وارد بشم صرفا نوشتن این کد به تنهایی بی فایدست ظاهرا ، نمی دونم شایدم من اشتباه استفاده می کنم شما خودتون تا حالا امتحان کردین این رو ؟ اگه همچین کاری کردین ممنون میشم یه مقدار دقیق تر بگین چه طور باید لیست ویو رو بدون خارج شدن ازش اپدیت کنم الان چند روز در گیر این موضوع هستم رفرش کردن جواب میده ولی ظاهر بدی به برنامه میده اگه بشه فقط ایتم های جدید اضافه بشه مثل دستور ()adapter.remove که ایتم رو حذف می کنه ایتمی رو اضافه کرد خیلی خوب میشه بازم ممنون (11 سال پیش)
0 0
باز به غیر از این مساله خود اجرای مجدد یک کلاس در کلاس G هم واسم مهمه این هم جدا از اپدیت لیست ویو هست که توی کلاس G به ازای یک شرط کدی بنویسم که مجددا کلاس main ام رو اجرا کنه ... برای این موضوع پیشنهادی ندارین شما ؟ (11 سال پیش)
+1 0
در مورد رفرش لیست ویو منم زیاد به مشکل برخوردم دلیلشم این بود که جای درست از کد استفاده نمیکردم یا هزاران مشکل دیگه!در مورد کلاس G هم شما اگه میخوای تکه کدی رو که داخل کلاس G هس اجرا کنید پیشنهاد من اینه که اونو داخل یه متد بزارین و بهد اون متد رو فراخوانی کنید به همین راحتی (11 سال پیش)
0 0
اوکی . ممنون (11 سال پیش)
0 0
یه مشکلی هست متدی که من بخوام تعریف کنم توش UI هم هست و این مساله ساز میشه !! می دونید منظورم چی هست ؟ خطا می گیره اونوقت چون باید متدم static تعریف بشه دیگه درسته ؟ در این صورت findviewbyId رو خطا می گیره و میگه تعریف کن !! (11 سال پیش)
0 0
UI در کلاس G???????چجوری؟مگه کلاس G اکتیویتی هس؟ (11 سال پیش)
0 0
نه جناب ui توی کلاس main تعریف شده و من می خوام کلاس main رو بگم در کلاس G تحت شرایطی در کلاس G مطرح شده دوباره اجرا بشه (11 سال پیش)
0 0
خب همون شرط رو بنویس و بعد داخل شرط startActivity رو فراخوانی کن (11 سال پیش)
+1 0
این بحثیه که بارها تو سایت مطرح شده و جواب درست و درمون هم به داده نشده. خود من یه بار این سوال رو مطرح کردم که چطور میشه بعد از مثلا حذف یک آیتم از لیست ویو بدون اجرای دوباره اکتیویتی اون رو آپدیت کرد. متاسفانه سوال خیلی هاست و جواب کافی و وافی هم بهش داده نشده. کاش به بار واسه همیشه این بحث حل شه (11 سال پیش)
0 0
واقعا کاش ... من الان شاید و هفته هست در گیر این هستم باز ممنون (11 سال پیش)
0 0
شما اگه از اون کد بالا استفاده کنید مشکلتون حل میشه فقط محل قرار دادن اون کد مهمه همین وگرنه چیز خاصی نداره منم خودم خیلی درگیرش بودم (11 سال پیش)

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