آموزش قرار دادن json در Expandable Recyclerview

امتیاز 3.50 ( 2 رای )

سلام ذوستان در این سری از آموزش برنامه نویسی اندروید بهآموزش قرار دادن json در Expandable Recyclerview در برنامه نویسی اندروید می پردازیم قبلتر پست های مختلفی درباره Expandable Recyclerview قرار داده بودیم امروز به دریافت json از یک url و قرار دادن دیتای parse (تجزیه) شده آن در Expandable Recyclerview خواهیم پرداخت در ادامه با ما همراه باشید.
 
در این آموزش از چهار کتاب خانه زیر استفاده شده است.

  • Recyclerview برای متریال دیزاین و ساخت Expandable Recyclerview
  • CardView برای متریال دیزاین
  • volley برای دریافت json از اینترنت
  • glide برای بارگذاری عکس در برنامه

 
پس برای ابتدای کار وارد فایل Build.gradle از نوع Module شده و در بخش dependencies خط های زیر را اضافه کنید.

پروژه را sync کنید.
دوستان دقت کنید ما در این آموزش از layout جدید گوگلی یعنی Constraint Layout استفاده می کنیم آموزش آن را می توانید در لینک زیر مشاهده کنید.
لینک
json ما در آدرس زیر قرار دارد (json از سایت دیگر گرفته شده است)

یک کلاس به نام Hero.java ایجاد کرده و کد های زیر را در آن قرار دهید.

کلاس بالا به نام getter و setter شناخته می شود.
در layout اصلی که در اینجا نام آن برابر با activity_main.xml کد های زیر را قرار دهید.

در بالا یک RecyclerView قرار داده ایم تا cardview و بقیه اجزا در آن قرار گیرند.
ما در اینجا آداپتور سفارشی داریم پس  باید یک layout سفارشی برای قرارگیری داده های که از اینترنت دریافت می شود داشته باشیم پس یک فایل در پوشه layout به نام list_layout_heroes.xml ایجاد کرده و کدهای زیر را در آن قرار دهید.

کد بالا شکل زیر را ایجاد می کند.

در بالا یکی از آنها نمایش داده شده است.
حالا باید انیمیشن expand و collapse (باز و بسته شدن ) را ایجاد کنیم.
ابتدای یک پوشه به نام anim در res ایجا کنید و در آن پوشه یک فایل به نام slide_down.xml ایجاد کرده و کدهای زیر را در آن قرار دهید.

زمان ایجاد آداپتور است.
یک فایل جاوا به نام HeroAdapter.java ایجاد کرده و کدهای زیر را در آن قرار دهید.

کار کد بالا دریافت متن ها وset کردن آنها و عکس در بخش های تعریف شده است  و بخش جدید کد بالا animation است که قرار گرفته است.
و در آخر باید json را دریافت کنیم.
وارد فایل MainActivity.java شده و کدهای زیر را قرار دهید.

در بالا json توسط کتاب خانه volley دریافت شده و سپس با تجزیه json با آداپتور سفارشی که ساختیم داده در layout قرار می گیرد.
 
فراموش نکنید دسترسی اینترنت را در AndroidManifest.xml اضافه کنید.

 
این آموزش هم به پایان رسید.
 
موفق و پیروز باشید.

مطالعه بیشتر