مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش فرگمنت ها در برنامه نویسی اندروید


یک فرگمنت  در اندروید ، بخشی از واسط کاربری یک اپلیکیشن و یا رفتاری است که شما می توانید آن را در یک activity قرار دهید. می توان گفت که یک Fragment نوعی زیر مجموعه ی اکتیویتی ها  (sub-acitivity) به حساب می آید ؛ به طور معمول فرگمنت ها هر بخش را به صورت جداگانه مرتب می کنند و نظم و انضباط خاصی به برنامه شما می بخشند. فرگمنت ها نیز همچون اکتیویتی ها ، دارای رفتار های به خصوص و چرخه حیات منحصر به فرد هستند.در مورد Fragment ها در اندروید چند نکته قابل توجه است :

  1. یک فرگمنت در اندروید ، دارای layout ها و رفتار های خاص مربوط به خود و چرخه حیات (callback ) مخصوص به خود است
  2. شما می توانید، در زمان اجرای یک activity ، فرگمنت هایی را به آن اضافه و یا از آن حذف کنید.
  3. شما می توانید برای ایجاد یک واسط کاربری چند بخشی در یک activity واحد ، چندین Fragment را با هم ترکیب کنید.
  4. هر اکتیویتی می تواند چندین فرگمنت را در خود جای دهد و هر فرگمنت می تواند در چندین اکتیویتی استفاده شود.
  5. چرخه حیات Fragment کاملا مرتبط با چرخه حیات activity میزبان آن است. این بدان معناست که، زمانی که یک activity متوقف می شود، تمام Fragment های موجود در activity نیز متوقف می شوند.
  6. یک فرگمنت می تواند رفتاری را پیاده سازی کند که دارای هیچ مولفه واسط کاربری نیست.
  7. Fragment ها در نسخه­ ی Honeycomb اندروید ، به Android API اضافه شده اند که شامل API نسخه 11 است.
  8. شما Fragment ها را با توسعه کلاس Fragment ایجاد می کنید و می توانید با معرفی کردن یک Fragment به عنوان یک تگ <fragment> ، در فایل layout  اکتیویتی ، آن را در layout  اکتیویتی خود درج کنید.
  9. می توانید با کمک کلاس Fragment ، فرگمنت ها را ایجاد کنید و می توانید یک فرگمنت را به activity خود اضافه کنید.

 

قبل از معرفی مقدماتی این مبحث ، باید یاد آور شویم که ما یک محدودیت داریم، زیرا تنها می توانیم یک activity واحد روی صفحه را در یک نقطه مشخص در زمان نشان دهیم. بنابراین نمی توانیم صفحه دستگاه را تقسیم کنیم و بخش های  های مختلف را جداگانه کنترل کرده و به نمایش بگذاریم . 

اما با معرفی Fragment انعطاف پذیری بیشتری پیدا کردیم و محدودیت داشتن یک activity روی صفحه در یک زمان را حذف کردیم. حالا ما می توانیم یک activity واحد داشته باشیم، اما هر activity می تواند شامل چند Fragment باشد که layout ، رویدادها (events) و Callback خود را داشته باشند.

مثال زیر نشان می دهد که چگونه دو ماژول UI که به وسیله ­ی Fragment  ها تعریف شده اند، می توانند در طراحی برای یک تبلت با هم ترکیب شوند ولی در طراحی برای یک گوشی از هم جدا شوند.

اپلیکیشن در زمان اجرا بر روی دستگاهی با سایز تبلت، می تواند شامل دو fragment در اکتیویتی A باشد. با این حال، بر روی صفحه نمایش دستگاهی مانند گوشی، فضای کافی برای هر دو fragment وجود ندارد. بنابراین اکتیویتی A ، فقط شامل fragment ای برای نمایش لیست مقاله ها خواهد بود و زمانی که کاربر یک مقاله را انتخاب می کند ، فعالیت B آغاز می شود که شامل fragment  دوم برای خواندن مقاله است.

چرخه حیات fragment  :

fragment  های آندروید چرخه زندگی ای  بسیار شبیه به یک Activity دارند . این بخش ، مراحل مختلف چرخه زندگی را شرح می دهد :


در ادامه ، لیست متدهای مهمی که شما می توانید در کلاس fragment خود، آنها را override کنید، ارائه شده است :

()onAttach : این متد هنگامی که فرگمنت به اکتیویتی اضافه شده خوانده می شود.
 

()onCreate : سیستم ، این متد را در زمان ایجاد fragment فراخوانی می کند. شما باید در این متد اجزای ضروری fragment را مقدار دهی اولیه کنید. این اجزا ، آن هایی هستند که در زمان متوقف شدن یا از کار افتادن fragment و شروع به کار مجدد آن ، نمی خواهید مقادیر آنها را از دست بدهید.

()onCreateView : سیستم این callback را زمانی فراخوانی می کند که fragment برای اولین بار بخواهد واسط کاربری (user interface) خود را ترسیم کند. برای ترسیم یک واسط کاربری برای fragment خود، شما باید یک مولفه View از این متد برگردانید که ریشه (root) صفحه بندی (layout) از  fragment شماست. در صورتی که fragment یک واسط کاربری را ایجاد نکند ، شما می توانید null را برگردانید.

()onPause : سیستم این متد را در زمان بروز اولین نشانه مبنی بر ترک fragment توسط کاربر، فراخوانی می کند. اینجا معمولا جایی است که تمام مواردی که فراتر از نشست فعلی کاربر باید ذخیره شده و باقی بمانند، اعمال می شوند.

()onStart :  متد onStart هنگامی که یک fragment قابل مشاهده است فراخوانی  می شود.

()onStop : در زمان متوقف شدن فرگمنت فراخوانی می شود.

()onDestroy : در زمان انتهای حیات فرگمنت این متد اجرا می شود.
 

 

چگونه از fragment ها استفاده کنیم ؟

این توضیحات شامل تعدادی از مراحل ساده برای ایجاد Fragment است.

  • اول از همه تصمیم بگیرید که می خواهید چند Fragment  در یک activity استفاده کنید. مثلا ما می خواهیم از دو بخش استفاده کنیم تا حالت های افقی و عمودی دستگاه را مدیریت کنیم.

  • بعد بر اساس تعداد Fragment ها، کلاس هایی ایجاد می کنیم که کلاس Fragment را توسعه دهیم. کلاس Fragment دارای توابع فراخوانی شده فوق است. شما می توانید از هر یک از  توابع بر اساس نیاز تان استفاده کنید.

  • با توجه به هر Fragment، شما باید فایل های layout را در فایل XML ایجاد کنید. این فایل ها برای بخش های تعریف شده طراحی شده اند.

 

انواع Fragment :

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

frame fragment های تکی (تنها) : از این مورد برای دستگاه های دست نگه دار مانند تلفن های موبایل استفاده می شود، در اینجا می توانیم فقط یک Fragment را به عنوان یک نمایه نشان دهیم.

لیست Fragment ها : Fragment ها دارای نوع به خصوصی از نمایش هستند که لیست Fragment ها نامیده می شوند.

fragment transaction ( یا تراکنش Fragment) : با کمک این قابلیت میتوانیم یک Fragment را به Fragment دیگر انتقال دهیم . 

 

به عنوان آخرین مطلب ، شاید برخی برنامه نویسان اندروید بگویند ما اپلیکیشن طراحی کردیم بی آنکه از فرگمنت ها استفاده کنیم ؛ پس لزومی بر استفاده از این عناصر وجود ندارد . این درست است ، یک برنامه اندرویدی بدون فرگمنت ها نیز کار میکند ولی یک ساعت مچی را در نظر بگیرید . انتظار شما از هر ساعت مچی فقط نشان دادن زمان است اما ترجیح می دهید ساعت شما یک ساعت سوییسی اصل باشد.

فرگمنت ها برنامه ی شما را تبدیل به یک برنامه ی اصیل و ماهرانه می کند.

فصلِ: 20 , تعداد قسمت ها: 238 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل رایگان مربوط به مفاهیم php و api نویسی …

توضیحات کلی مجموعه: دوره متخصص اندروید کلیک سایت کامل ترین دوره جامع برنامه نویسی اندروید(حتما دمو دوره را ببینید)   چرا دوره متخصص جایگزین دوره صفرتاصد اندروید شد؟ کلیک سایت تصمیم گرفت …
فصلِ: 30 , تعداد قسمت ها: 182 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت اپلیکیشن علی بابا-آموزش کالبک ها-…

دوره "متخصص" جایگزین دوره صفرتاصد اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دوره صفرتاصد شده است؟چرا باید دوره متخص…
فصلِ: 11 , تعداد قسمت ها: 121 , سطح: صفر تا صد

این فصل در یک نگاه:

عملیات شبیه فیلتر-ساخت الرت دیالوگ وچیدمان براساس فروش-مرتب سازی-نحوه خطایابی-استفاده از bottom sheet در اندروید-سبد خری…

آموزش ساخت اپلیکیشن اندروید دیجی کالا  : ساخت برنامه اندروید یکی از پر طرفدارترین آموزش های کلیک سایت می باشد. با توجه به فراگیر شدن سیستم اندروید و آشنایی افراد با این سیستم ، برنامه های ک…
فصلِ: 3 , تعداد قسمت ها: 179 , سطح: صفر تا صد

این فصل در یک نگاه:

در این دوره آموزشی ، برنامه نویسی اندروید و ios را با استفاده از زامارین خواهیم آموخت. همچنین به صورت کاملا پروژه محور ، اپلیکیشن فروشگاهی مشابه دیجی کالا را پیاده سازی خواهیم کرد. در انته…
فصلِ: 2 , تعداد قسمت ها: 58 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: سرفصل های دوره آموزش ساخت اپلیکیشن فیلیمو معرفی اهداف دوره مقدمه و بررسی پیش نیازهای دوره بررسی جزئی و …
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت api key-آموزش استفاده از GPS گوشی ونمایش مکان شخص برروی نقشه-متصل کردن چند نقطه برروی نقشه با خط-رسم چند ضلعی…

حتما دمو دوره رو ببینید اولین دوره کامل کار با نقشه گوگل ومسیریابی در نقشه گوگل(این اموزش مشابه فارسی ندارد) اموزش کار با نقشه گوگل در برنامه نویسی اندروید یکی از مهم ترین مباحث هست که …
فصلِ: 1 , تعداد قسمت ها: 14 , سطح: صفر تا صد

این فصل در یک نگاه:

ساخت انواع نوتیفیکیشن ها -کار با وب سرویس پوشه-ارسال نوتیفیکیشن با سرویس پوشه-ارسال نوتیفیکیشن با one signal-اموزش کار ب…

با این مجموعه همه چیز در مورد نوتیفیکیشن و فایربیس رو خواهید اموخت یکی از مواردی که در استخدام کاربران در شرکت های برنامه نویسی بسیار موثر هست مبحث کار با firebase هست که ما دراین دوره ام…
فصلِ: 1 , تعداد قسمت ها: 16 , سطح: صفر تا صد

این فصل در یک نگاه:

لیست کردن فایل های صوتی ویدیویی گوشی-طاحی متریال وزیبا-استفاده از تب بندی-حرکت سیک بار همراه با اهنگ وزمان-ست کردن زمان …

توضیحات کلی مجموعه: اموزش ساخت یک موزیک پلیر و ویدیو پلیر ح رفه ای که کاملا کاربردی است و قابلیت نصب روی گوشی های مختلف را دارد از جمله امکانات این اپلیکیشن: لیست کردن فایل های صوتی وید…
فصلِ: 1 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

اموزش ساخت اپلیکیشن کافه بازار-اشتراک گذاری اپلیکیشن-کار با رتروفیت-کاربا ران تیم پرمیشن- کار با فرگمنت ها-کار با sqlite…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دو…
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار-اموزش فروش سکه-اموزش فروش اشتراک-اموزش فروش نسخه پولی-اموزش چک کردن خرید کردن کاربر-اموزش کا…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 20 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش کامل پیکربندی mvp-اموزش اتصال با سرور با رتروفیت و rxjava-اموزش کار با دیتابیس-آموزش کار با bottom navigation-اموز…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 35 , سطح: متوسط

این فصل در یک نگاه:

این آموزش در یک فصل شامل 35 جلسه آموزش تصویری به همراه سورس کد ارائه شده است.…

سرفصل ها مقدمه و معرفی متد آموزشی بررسی جزئی و خلاصه موارد موردنیاز پیش از آموزش شامل: کار با ویوها،  کار با کتابخانه های مختلف و ... …
فصلِ: 1 , تعداد قسمت ها: 1 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال پیامک با سامانه مدیر پیامک-ارسال کد فعال سازی برنامه با پیامک-اعتبارسنجی کد فعال سازی-ثبت نام در اپلیکیشن با…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 2 , تعداد قسمت ها: 19 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال توکن در اندروید -اموزش امنیت در برنامه نویسی اندروید-اموزش ارسال توکن در هدر در اندروید-اموزش ساخت token -ام…

توضیحات کلی مجموعه: دموی دوره را حتما ببینید دوره امنیت و دیزاین پترن در برنامه نویسی اندروید که شامل دو فصل هست. فصل اول شامل اموزش singletone design patern-builder design patern-command …
فصلِ: 2 , تعداد قسمت ها: 44 , سطح: صفر تا صد

این فصل در یک نگاه:

در فصل دوم این دوره بیشتر میپردازیم به کار با کتابخانه ها و موارد پیشرفته تر مانند دوربین ، ضبط صدا، دیتا بیس ، و .....…

توضیحات کلی مجموعه: سلام خدمت کلیک سایتی های عزیز مجموعه آموزشی صفر تا صد برنامه نویسی اندروید در محیط بیسیک 4 اندروید (basic 4 android) معرفی محیط بیسیک 4 اندروید محیط b4a  تحت کمپانی A…
فصلِ: 3 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل جدید و اپدیت های جدید-آموزش کار با برودکست ریسیور در کاتلین-آموزش چک کردن اتصال به اینترنت در کاتلین-اموزش اپلود کرد…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 21 , سطح: متوسط

این فصل در یک نگاه:

نحوه ارورگیری-رفع ایراد-رفع مشکل-اشتراک گذاری مطالب-ساخت اکتیویتی تنظیمات-اشتراک گذاری مطالب-جستجو کردن…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 128 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار با کاتلین…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 8 , تعداد قسمت ها: 62 , سطح: صفر تا صد

این فصل در یک نگاه:

اپلود تصاویر روی سرور نود جی اس-کار با کانال در چت- ساخت کانال-ساخت گروه-تفاوت کانال و گروه-انلاین بودن-ارسال تصاویر در …

  توضیحات کلی مجموعه آموزش اندروید اپلیکیشن چت مشابه تلگرام( با استفاده از Socket IO ): دموی مجموعه را حتما ببینید دراین دوره سعی میشود بسیاری از اپشن هایی که اپلیکیشن موبوگرام داراست ر…
فصلِ: 6 , تعداد قسمت ها: 194 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل آپدیت های مربوط به دوره را قرار میدهیم…

با سلام و خسته نباشد خدمت کلیک سایتی های عزیز در ادامه با توضیحات مختصری درمورد دوره ی react native با ما همراه باشید: React Native چیست؟ قطعا یکی از آرزوهای برنامه نویسان این میباشد که ب…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید