دوره مجازی اندروید (جلسه 12): آشنایی با ViewPager و TabLayout

- visibility ۳۹ mode_comment

به نام خدا، دوستان سلام. توی این جلسه به معرفی viewpager و tablayout می پردازیم.برای پیاده سازی viewpager دوباره با recyclerview و fragment ها کار خواهیم کرد تا هم اینکه مروری بشه، همین که بیشتر کاربردشون رو درک بکنید.

مطالب مطرح شده در این جلسه عبارتند از :

 

  • ViewPager چیست؟
    • FragmentPagerAdapter چیست؟
    • FragmentStatePagerAdapter چیست؟
    • ایجاد Adapter برای ViewPager
    • متصل کردن Adapter به ViewPager
  • TabLayout چیست؟
    • متصل نمودن Tablayout به ViewPager
    • نمایش متن در Tablayout
info توجه

این مطلب یک جلسه از دوره آموزش اندروید می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

ثبت نام در دوره آموزش اندروید

comment دیدگاه کاربران
hamidreza khajeh

سلام استاد خسته نباشید
آموزشا و توضیاحتتون خیلی عالیه دستتون درد نکنه

منم مثل بقیه دوستان یکم برام سنگین هست خصوصا این دو جلسه آخر خیلی پیجیده تر شده فک کنم پیشنهاد اون دوستمون ک گفتن خلاصه کارایی ک انجام شده رو بصورت شماتیک نشون بدید چیز بدی نباشه

الان بعد از اینکه پرژه تکمیل شدش یه مرور کلی داشته باشید و بگید صورت یه نمودار یا همچین چیزی و بصورت خلاصه مثلا بگید ک اداپتر این وسط کارش چیه(مثلا فلان چیز رو به فلان چیز مرتبط میکنه) و چرا ما اینجا دوتا اداپتر استفاده کردیم
این وسط یا فرگمنت ها همینطور و موارد اینطوری که آخر جلسه هم یه مروری بشه و هم ما بفهمیم چرا باید مثلا این کار و اون کار رو بکنیم(امیدوارم منظورم رو درست رسونده باشم)

بازم ممنون از شما

سعید شاهینی

سلام، در جلسات بعدی چندین بار این مطالب رو آموزش دادم دوباره و راجع بهشون توضیحات کامل تری دادم، مطمئناً در جلسات بعدی گنگ بودن مسائل بر طرف خواهد شد.

hamidreza khajeh

دستتون درد نکنه،خیلیم عالی
خدا خیرتون بده

حامد سبزیان

سلام خسته نباشید
بعضی از ویدئو ها مشکل دارن و قطع میشن
مثل همین جلسه دوازده
شش هفت دقیقه از ویدئو که میره بعدش قطع میشه 🙁 🙁 🙁
چی کار کنم ؟
به دادم برسید
با پلیرهای دیگه هم باز کردم
تو سیستم های دیگه هم امتحان کردم

سعید شاهینی

سلام، اگه از مرورگر کروم استفاده می کنید، با استفاده از ctrl+shift+R صفحه را رفرش کنید تا مشکل بر طرف بشه.

حامد سبزیان

حل شد مشکل ویدئو

ppp

جهت ارسال نظر دیگر در این صفحه سیستم ممکنه نظر قبلی رو اسپم نشون بده و ممکنه اقا شاین نتونید بخونید منم یه عکس از نظر قبلی میفرستم و ادامه مشکل میگم
http://s8.picofile.com/file/8275383534/AM.png
متن{سلام استاد
استاد برای من یک مشکل setupWithViewPager هست که اندروید استودیو اونو نمیشناسه حتی دیزاینر اونو دانلود کردم و حتی دقیقا کد های شما رو کپی کردم اما نمیدونم معنی این ارور چیه
http://s9.picofile.com/file/8275378276/22.png
http://s8.picofile.com/file/8275378934/1v1.png
http://s8.picofile.com/file/8275378400/111.png

راستی استادخیلی خوب میشه یک جلسه فقط در مورد ارور ها حرف بزنید مثل اقا اوند که در دوره php یک جلسه رو فقط به ارور ها اختصاص داد .}
————————
ادامه نظر
استاد اینم از عکس اندروید مانیفست
http://s9.picofile.com/file/8275383142/mi.pn

سعید شاهینی

سلام، شما به جای کلاس TabLayout کلاس جدول یعنی TableLayout رو داخل جاوا ساختید!

theking

باسلام خدمت استاد شاهینی عزیز!در قسمت viewpager تغذیه متفاوت فرگمنت ها با داده های متفاوت رو که فرمودین در آموزش بعدها کامل می شود رو توضیح ندادین استاد!ای کاش یه بخش کوچکی برای این قسمت هم بگذارید!باتشکر!

سعید شاهینی

سلام٬ بله داخل لیست آموزش ها قرار دادم٬ اردیبهشت ماه دوره آپدیت می شه و این آموزش رو هم یادداشت کردم که قرار بدم

سلام استاد شاهینی

بنده مطالب این جلسه رو انجام دادم. در آخر شکل اکتیویتی بوتیک من به این شکل در آمد:
http://s1.picofile.com/file/8287060968/malehman.PNG

به غیر از ردیف اول بقیه ردیف ها نیستن. اینم فایل جاوا و xml مربوط به پروژه:
java

xml:

http://s4.picofile.com/file/8287062334/xml.PNG

اگر به کد مربوط به قسمت های دیگه هم نیاز هست بفرمایید اونهارو هم می فرستم.

با تشکر

سعید شاهینی

سلام٬ متاسفانه عکس هاتون باز نمی شن. به ایمیلم فایل xml مربوط به layout سطر رو ارسال کنید.

مسعود معینی

سلام

اینطور که من متوجه شدم به این دلیل از ViewPager استفاده میکنیم تا کاربر بتونه بین فرگمنت ها swipe کنه. اگر درست متوجه شده باشم ما میتونیم چند فرگمنت رو توسط چند دکمه در یک FrameLayout فراخوانی کنیم بدون اینکه نیاز به ViewPager باشه. درسته ؟

سعید شاهینی

سلام٬ بله اما viewpager کارهایی دیگه ای هم انجام می ده مثل مدیریت lifecycle فرگمنت ها. مثلا زمانی که تعداد فرگمنت های زیاد باشه فقط مقدار مشخصی از اون ها رو داخل حافظه نگه می داره.

Hamid Azhdari

سلام و خسته نباشید استاد
من تمامی مراحل رو 3 بار یعنی از اول ساخت یک layout برای recycle view پیش رفتم تا آخر این جلسه و هر بار موقع اجرای نهایی بدون نشون دادن یه ارور توی android studio برنامه توی ماشین مجازی بعد از نشون دادن یه صفحه سفید می نوشت متاسفم برنامه متوقف شد و می پرید بیرون
امروز بعد کلی مغز ترکوندن رفتم یه اندروید بالاتر یعنی اندروید 7 و برنامه اجرا شد بدون هیچ مشکلی

حالا مشکل من اینه که من اول کار api 17 رو انتخاب کردم ولی الان باید حتمی اندروید 7 باشه تا اجرا بشه
ممنون میشم بگید مشکل کارم کجاست
خودم فکر می کنم از قسمتی که depencnsiy رو انتخاب کردم باشه چون بعد از گرفتن liberary بصورت دستی ورژن liberary رو به ورژن compile خودم تغییر دادم.

قسمت هاییrecycle و design بعد از اضافه شدن خودشون 26-0-0-alpha بود که خودم مجبور شدم تغییرش بدم

ممنون ببخشید سرتونو درد اوردم

سعید شاهینی

سلام٬ احتمالا از متدی استفاده شده داخل کدهاتون که داخل api 17 کار نمی کنه. از خطایی که می ده اسکرین شات بگیرید و ارسال کنید تا دقیق تر بتونم راهنماییتون کنم.

مهدی پاکروان

سلام
واقعا از این دوره ی خوب ممنونم من تا حالا 3 تا دوره از سایت های دیگه خریدم ولی واقعا آموزش های سایت شما با بقیه سایت ها فرق داره خیلی عالیه و کاربردی .
به همه ی دوستام که میخوان آموزش جدیدی بخرن حتما پیشنهاد میکنم ممنونم

سعید شاهینی

سلام، خیلی ممنونم، شما لطف دارید. خوشحالم که اینطوره

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.
1 2