بدست اوردن اکتویتی انتخاب شده در تب ها
سلام من یه تب دارم که میخوام یه سری اطلاعات بین اکتویتی ها جابه جا کنم!حالا چون سه تا تب دارم نمیدونم چطور بفهمم که کاربر کدومشو انتخاب کرده که اطلاعاتو بفرسم چون واسه ارسال اطلاعات حتما باید اکتویتی مقصد رو بهش بگی!ممنون میشم کمکم کنید

نگاه کنید مثلا من سه تا تب دارم مثل عکس بالا!حالا میخوام مثلا کاربر وقتی داخل تب photos هست اطلاعات ارسال کنم!حالا فرقی نمیکنه بره تب songs یا اینکه بره تب video در هر صورت میخوام اطلاعات بفرسم!همینجور که میدونید برای ارسال اطلاعات فقط نام اکتیویتی مقصد رو مینویسی!حالا من نمیدونم کاربر به کدوم تب میخواد بره!چجور اطلاعت بین تب ها انتقال بدم؟درست منظورمو رسوندم؟
@Override
protected void onPause() {
Intent intent = new Intent(G.context, نام اکتیویتی مقصد);
intent.putExtra("title", ui.edtSubject.toString());
intent.putExtra("description", ui.edtTextPosts.toString());
super.onPause();
نگاه کد بالا بکنید من هنگام ارسال اطلاعات باید نام اکتیویتی مقصد رو بگم حالا از کجا بدونم کاربر به کدوم تب رفته که اطلاعات ارسال کنم؟
روش شما یکسری اشتباهات کلی داره.
با توجه به اطلاعاتتون 2 راه کلی برای دریافت اطلاعات وجود داره:
1: گرفتن کل اطلاعات در اکتیویتی و پاس دادن به فرگمنت ها
2: گرفتن اطلاعات در خود فرگمنت ها
روش اول :
الف:(اگر از ویو پیجر استفاده میکنید) باید اطلاعات کاربر رو در اکتیویتی بگیرید و به آداپتری که به ویو پیجر متصل میکنید، ارسال کنید. (روش پیشنهادی)
ب:(اگر از ویو پیجر استفاده نکردید) باید یک پارامتر ورودی برای فرگمنت در نظر بگیرید و اطلاعات رو از اکتیویتی بهش ارسال کنید.(چون از درون فرگمنت میخواید به فرگمنت بعدی برید، باید یک متد در اکتیویتی تعریف کنید و از درون فرگمنت اون رو صدا بزنید تا فرگمنتی که در صفحه نمایش داده میشه رو عوض کنه)
روش دوم: در اکتیویتی فقط فرگمنت ها رو عوض کنید، و در خود فرگمنت تمام اطلاعات رو از دیتابیس، سرور و یا ... بگیرید.
هنوز هم بستگی به نوع اطلاعات و عملی که روشون انجام میشه داره.
در مورد تفاوت های فرگمنت و اکتیویتی هم باید سرچ کنید، استفاده از یک اکتیویتی در اکتیویتی دیگر اصلا کار درستی نیست، ولی شما میتونید هرچقدر که بخواید به یک اکتیویتی فرگمنت اضافه کنید.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .