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

اکتیویتی

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

سلام میخواستم بدونم اگر یه لایوتی مثل لایوت شکل زیر داشته باشیم وبخواهیم با کلیک روی هر کدوم از دکمه ها یه صفحه جدید باز بشه چه کار کنیم ایا باید برای هرکدوم یه اکتیویتی ایجاد کنیم وتوی اون اکتیویتی لایوت مورد نظرمونو صدا بزنیم البته این کار رو میشه انجام داد ولی اگر تعداد دکمه ها بالا باشه  صد در صد  تو چرخه حیات اکتیویتی هابه مشکل بر میخوریم)چکار کنم جان من یکی جواب کامل بده. ممنون

 

0 0
کسی نمیدونه؟؟؟؟؟؟؟ (11 سال پیش)
0 0
بهتره مطالبی که دوستان با موضوع فرگمنت نوشتن رو مطالعه کنید یا از طریق stackoverflow سرچ کنید این موضوع رو (11 سال پیش)
0 0
شما اگر تا قسمت دیتابیس رو مطالعه کنی به جوابت می رسی. (11 سال پیش)
0 0
دیتابیس را مطالعه کردم ولی ربطی به این موضوع نداره (11 سال پیش)
0 0
دیتابیس را مطالعه کردم ولی ربطی به این موضوع نداره (11 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Andronymous  11 سال پیش
+1 0

شما میتونی یک اکتیویتی داشته باشی که RelativeLayout باشه و به تعداد دلخواه توش layout داشته باشی که میتونن حتی روی هم باشند و یا همه fill_parent باشن و کل صفحه رو بگیرن
 بعد برای button ها تعریف کنی هر کدوم یک layout رو visible کنه و بقیه layout ها رو invisible کنه برای کنترل کردن اونام میتونی layout ها رو توی آرایه ذخیره کنی!

البته واقعا نمیدونم این  کار بهینه هست یا نه اساتید بیان بگن برا خودمم سواله!
نمونه کد:

public Button[]    sampleButtons = { R.id.btnSample1,
                                            R.id.btnSample2,
                                            R.id.btnSample3,
                                            R.id.btnSample4, };

public ViewGroup[] sampleLayouts = { R.id.lytSample1,
                                            R.id.lytSample2,
                                            R.id.lytSample3,
                                            R.id.lytSample4, };
    
OnClickListener    listener  = new OnClickListener() {

                                      @Override
                                      public void onClick(View v) {
                                          int tag = (Integer) v.getTag();
                                          for (int i = 0; i < 4; i++) {
                                              sampleLayouts[i].setVisibility(View.INVISIBLE);
                                          }
                                          sampleLayouts[tag].setVisibility(View.VISIBLE);
                                      }
                                  };
                                  
                                  for (int i = 0; i < 4; i++) {
                                      sampleButtons[i].setOnClickListener(listener);
                                      sampleButtons[i].setTag(i);
                                  }

فکز میکنم با این الگوریتم (باز بستگی داره ب شرایط شما) خوب میشه مدیریتش کرد!

 

پاسخ به سوال 
hosseinAmini  11 سال پیش
+1 0

فرض می گیریم تو دیتابیس دوتا جدول هست با نام های listcontent و activitycontent
لیست ویو اطلاعاتش رو از listcontent و اکتویتی ای که با کلیک روی دکمه ها واردش می شیم از activitycontent می گیره.
حالا توی هر دو جدول یه فیلد می سازیم که حکم کلید داره مثلا اسمش key هست(این فیلد رو توی هر دوتا جدول listcontent و activitycontent می سازیم). و مقداره این فیلد تو هر دو جدول برای رکوردهای مرتبط یکیه.

مثلا دکمه هفتم اطلاعاتش رو از رکورد هفتم توی جدول listcontent می گیره و با کلیک شدن رو دکمه هفتم اکتیوی دیگر باز میشه که این اکتویتی اطلاعاتش رو از رکورد هفتم جدول activitycontent میگیره. حالا چون این دوتا رکورد باهم مرتبط هستند مقدار key هردو رو یکی قرار می دیم (مثلا می زاریم seven) 
حالا وقتی روی هر دکمه کلیک میشه می گیم مقداره key اون ردیف رو(توی این مثال مقدار key برابر seven بود) به اکتیویتی دوم ارسال کن (با Extra این کار رو می کنیم) و توی اکتیویتی دوم میگیم که مقداره extra رو بگیر و توی جدول activitycontent جست و جو کن و اون ردیفی رو که مقدار keyش برابر با مقدار extra هست رو برگردون. الان به راحتی می تونی محتوای اون ردیف توی جدول activitycontent رو بگیری و باهاشون هرکاری می خوای بکنی

0 0
ممنون از کمکی که کردی -لینکی در این مورد میتونی بزاری پیشاپیش ممنون (11 سال پیش)
0 0
ممنون از کمکی که کردی این توضیحات با دو اکتیویتی اجرا میشه یا نه برای هردکمه یک اکتیویتی میخواد -لینکی در این مورد میتونی بزاری پیشاپیش ممنون (11 سال پیش)
0 0
با این روش فقط به یه اکتیویتی نیاز دارید :) متاسفانه لینک ندارم ولی روش فکر کن تا به نتیجه برسی، چون این روش تقریبا توو همه پروژه ها کاربرد داره و حتما باید یاد بگیری (11 سال پیش)
0 0
خییلی اقایی ممنون (11 سال پیش)
0 0
راستی به یه اکتیویتی برای نمایش لیست و یک اکتیویتی برای وقتی روی دکمه ها کلیک شد نیاز دارید. در کل به دوتا اکتیویتی نیاز دارید (11 سال پیش)

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