آیا می دانید با دوره های آموزشی سون لرن می توانید از 0 تا 100 طراحی وب را در منزل فراگیرید!

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

37 5669 ۹ مرداد ۹۵
به نام خدا، دوستان سلام. توی این جلسه به معرفی viewpager و tablayout می پردازیم.برای پیاده سازی viewpager دوباره با recyclerview و fragment ها کار خواهیم کرد تا هم اینکه مروری بشه، همین که بیشتر کاربردشون رو درک بکنید. مطالب مطرح شده در این جلسه عبارتند از :  
  • ViewPager چیست؟
    • FragmentPagerAdapter چیست؟
    • FragmentStatePagerAdapter چیست؟
    • ایجاد Adapter برای ViewPager
    • متصل کردن Adapter به ViewPager
  • TabLayout چیست؟
    • متصل نمودن Tablayout به ViewPager
    • نمایش متن در Tablayout
این مطلب یک جلسه از دوره آموزش پروژه محور برنامه نویسی اندروید - پایه تا پیشرفته است و برای دیدن آن باید در این دوره ثبت نام کنید .
توضیحات : سیستم عامل اندروید، با بیش از یک میلیارد کاربر در دنیا بالغ بر 70 درصد سهم سیستم عامل های تلفن های همراه را به خود اختصاص داده است. همین موضوع باعث شده تا بازار کاری با پتانسیل بالا برای برنامه نویسی اندروید ایجاد گردد. با توجه به استقبال کاربران و درخواست های مکرر شما دوستان عزیز سعی کردیم دوره ای جامع و کامل را در زمینه برنامه نویسی اندروید برگزار نماییم. در این دوره تمامی مفاهیم مقدماتی تا پیشرفته اندروید را به صورت کاملا پروژه محور آموزش خواهیم داد. پس از گذراندن این دوره می توانید هر برنامه و اپ اندرویدی که می خواهید، با بهترین کیفیت و آخرین تکنولوژی های روز تولید کنید. این دوره طوری طراحی شده که تمام نیازهای بازار کار را پاسخگو می باشد. زبان برنامه نویسی استفاده شده در این دوره جاواست که بهینه ترین، پر سرعت ترین و با کیفیت ترین اپ های اندروید را با آن می توان تولید کرد و گوگل این روش را با آخرین به روزرسانی ها به بهترین شکل پشتیبانی می کند. برای گذراندن این دوره، نیاز به تجربه برنامه نویسی پیشرفته ندارید، ما سعی کردیم اکثر مفاهیم مورد نیاز شما را در جلسات ابتدایی آموزش دهیم. این دوره نیز بر اساس اصل قیمت گذاری منصفانه در سون لرن با هزینه ای بسیار کمتر از آنچه در دوره های حضوری می پردازید در دسترس شما خواهد بود.
:: مطالب جدید سون لرن را از طریق ایمیل دریافت کنید :

دیدگاه ها 37 دیدگاه برای این مطلب ارسال شده است.

  • ‏‏
    hamidreza khajeh(۱۷ مهر ۱۳۹۵)

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

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

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

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

    • ‏‏
      سعید شاهینی(۱۷ مهر ۱۳۹۵)

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

      • ‏‏
        hamidreza khajeh(۱۸ مهر ۱۳۹۵)

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

  • ‏‏
    حامد سبزیان(۴ آبان ۱۳۹۵)

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

    • ‏‏
      سعید شاهینی(۶ آبان ۱۳۹۵)

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

  • ‏‏
    حامد سبزیان(۵ آبان ۱۳۹۵)

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

  • ‏‏

    جهت ارسال نظر دیگر در این صفحه سیستم ممکنه نظر قبلی رو اسپم نشون بده و ممکنه اقا شاین نتونید بخونید منم یه عکس از نظر قبلی میفرستم و ادامه مشکل میگم
    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 رو داخل جاوا ساختید!

  • ‏‏

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

    • ‏‏
      سعید شاهینی(۲۶ بهمن ۱۳۹۵)

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

  • ‏‏
    Rochezto Delaporana(۲ اسفند ۱۳۹۵)

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

    بنده مطالب این جلسه رو انجام دادم. در آخر شکل اکتیویتی بوتیک من به این شکل در آمد:
    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 فرگمنت ها. مثلا زمانی که تعداد فرگمنت های زیاد باشه فقط مقدار مشخصی از اون ها رو داخل حافظه نگه می داره.

  • ‏‏

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

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

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

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

    • ‏‏
      سعید شاهینی(۱۵ اردیبهشت ۱۳۹۶)

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

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

    ورود/عضویت سریع با اکانت فیسبوک/جیمیل شما

    :: شما می توانید با استفاده از اکانت یاهو یا جیمیل خود به صورت کاملا امن، سریع و بدون نیاز به ورود اطلاعات عضو و وارد سایت شوید. در این صورت هیچ نیازی به ورود نام کاربری و رمز عبور خود نخواهید داشت و هویت شما از طریق ایمیلتان مورد تائید قرار می گیرد .
    برای استفاده از این روش باید در اکانت گوگل(جیمیل) و یا یاهوی خود لاگین باشید .
    عضویت/ ورود سریع با :
    در حال اتصال ...

    ورود به سایت

    ورود سریع با :
    در حال اتصال ...

    جستجو در سون لرن

    عبارت :