آموزش ساخت اسلایدر شبیه به اپ دیجی کالا
سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش ساخت اسلایدر شبیه به اپ دیجی کالا خواهیم پرداخت شاید بخواهیید مقدار های عکس و متن را سرور بخوانید و سپس در برنامه قرار دهید در این آموزش ما یک فایل json را از اینترنت می خوانیم آن را پارس کرده و در Slider قرار می دهیم در ادامه با ما همراه باشید.
در این آموزش ما از سه کتاب خانه زیر استفاده می کنیم.
- retrofit2 برای ارتباط با سرور
- gson برای خواندن فایل json (پارس یا همان تجزیه کردن آن)
- glide برای لود کردن عکس
ما یک فایل json داریم که در آدرس زیر قرار گرفته است.
محتوای json همانند زیر می شود.
وارد فایل Build.gradle از نوع Module شده و در بخش dependencies خط های زیر را اضافه کنید.
پروژه را sync کنید.
وارد فایل AndroidManifest.xml شده سپس دسترسی زیر را اضافه کنید.
حالا ابتدای کار باید یک کلاس model به نام Actor.java ایجاد کرده و کدهای زیر را در آن قرار دهید.
این کلاس همان کلاس getter و setter است.
یک کلاس دیگر model نیز می خواهیم تا تمامی Actor ها را در یک آرایه قرار دهد پس یک فایل جاوا به نام Actors.java ایجاد کرده و کدهای زیر را در آن قرار دهید.
حالا چون داریم از Retrofit استفاده می کنیم باید یک interface ایجاد کنیم.
یک interface به نام APIService.java ایجاد کرده و کدهای زیر را در آن قرار دهید.
در بالا Actors.php بخشی از آدرس فایل ما در هاست است نباید در آن http قرار گیرد فقط نام فایل باید باشد.
حالا باید در layout که نام آن برابر activity_main.xml کدهای زیر را قرار دهید (این layout اصلی است).
در بالا یک AdapterViewFlipper قرار دادیم تا به صورت اسلایدر در بیاریم
باید یک فایل به نام flipper_items.xml در layout ایجاد کرده و کدهای زیر را در آن قرار دهید.
در بالا یک ImagView برای قرار گرفتن عکس و یک TextView برای قرار گرفتن متن استفاده شده است.
زمان ایجاد آداپتور است تا عکس های عکس ها و متن ها در جای خودشان قرار گیرند.
و در آخر باید کدهای زیر را در MainActivity.java قرار دهید.
کد بالا json را با استفاده از کلاس های قبلی پارس (تجزیه)کرده و با استفاده از کلاس getter و setter در ViewFlipper قرار می دهد.
این آموزش هم به پایان رسید.
موفق و موید باشید.
سلام خسته نباشید بابت آموزشتون ممنون
توی برنامه حطا وجود داره ممنون میشم راهنمایی بفرمایید
سلام توی خط کد زیر خطا هستش
ArrayList actors = response.body().getActors();
Error:(59, 68) error: incompatible types: ArrayList cannot be converted to ArrayList
سلام خسته نباشید
بله این خط داخل MainActivity خطا میده :
ArrayList actors = response.body().getActors();
ممنون
برای رفع خطا باسد تو کلاس مدلی که ساختین :
private ArrayList Actors;
و
public ArrayList getActors
ینی دوجا به جای کلاس actor از کلاس actors به اشتباه استفاده شده .
سلام.
چجوری میشه شبیه اسلایدر دیجی کالا وقتی روی یک اسلاید کلیک میکنیم وارد یک اکتیویتی خاص بشیم ؟
بعد مثلا این آدرس اکتیویتی جدید رو بشه از سرور عوض کرد ؟
کافیه کلیک Listener تعریف کنید میشه این کار رو کرد ولی بهتره شما داده است رو با Json بفرستید و بگیرید.
سلام اسلایدر دیجی کلا چند تا دایره روی ویو داره که نشون میده تعداد و نشون میده که روی چندمین عکس هستیم اونو چطور باید اضافه کرد
سلام
میشه یکی اصلاع شدش را ار سال کنه هرچی میکنم فقط خطاهایش بیشتر میشه
https://t.me/bahmad65
سلام عزیز خوبین دادش این خطا میده من چیکارکنم میشه بگین تو تلگرام کجاش روباید اصلاح کنم
؟؟
telegram.me/engineer_it