آموزش کتابخانه ی lottie در اندروید ۳ (۲)

ایجاد اینیمیشن با کتابخانه ی lottie کتابخانه ی Lottie مجموعه ای متنوع از انیمیشن ها برای اندروید و ios و react native می باشد. انیمیشن ها با  adobe after effect ساخته می شوند و با فرمت json، مورد استفاده قرار می گیرند. با استفاده از این کتابخانه به سادگی می توان انیمیشن های زیبایی را در برنامه اجرا نمود. در این آموزش پیاده سازی کتابخانه ی Lottie را در یک پروژه ی اندرویدی یاد می گیریم. قدم اول : افزودن کتابخانه به پروژه def lottieVersion = "3.4.2" implementation "com.airbnb.android:lottie:$lottieVersion" قدم دوم : ایجاد view در...

تبدیل view به bitmap در اندروید ۳ (۴)

چگونه در اندروید یک view را به bitmap تبدیل کنیم؟ تبدیل view به bitmap در بسیاری از برنامه های اندرویدی می تواند کاربرد داشته باشد. گاهی نیاز به استفاده خاصی از view داریم که فقط با تبدیل view به bitmap ممکن می شود. در چه مواردی؟ تا زمانی که به آن نیاز پیدا نکنید نمی توان گفت. اما شاید به عنوان یک نمونه کلی بتوان به حالتی اشاره کرد که کاربر می تواند در برنامه view های مختلف را شخصی سازی کند و بتواند آنها را به اشتراک گذارد. مثل شخصی سازی تم برنامه و ساخت یک نمای کلی از آن. برای چنین کاری به تبدیل...

recyclerViwe در کاتلین

recyclerViwe در کاتلین همراه با اتصال به دیتابیس نامحدود در این آموزش به پیاده سازی recyclerviwe در کاتلین برای نمایش دیتابیسی بزرگ یا نامحدود می پردازیم. ریسایکلرویو عملی بازیافتی برای view ها به شمار می رود. از این طریق می توان مطمئن بود که منابع هدر نمی روند و دوباره به شکل بهینه ای استفاده خواهند شد. recyclerView موضوع آموزش های پیشین بلاگ بود. پیاده سازی و نحوه کار بهینه با آن در مقاله های مختلفی بررسی شد. تمام آموزش های پیشین در این باره به زبان جاوا بودند. امروز با پیاده سازی recyclerViwe در...

آپلود فایل بر روی سرور در یک پروژه اندرویدی ۱ (۱)

آپلود فایل بر روی سرور در اندروید در این مقاله به آموزش آپلود فایل روی سرور با استفاده از retrofit می پردازیم. آپلود فایل امکانی ست که در بسیاری برنامه ها وجود دارد. آخرین راه حل موجود برای ایجاد این امکان موضوع این مقاله می باشد. در این آموزش با استفاده از Rxjava و Retrofit با معماری MVP آپلود فایل در برنامه اندرویدی را عملی می سازیم. این آموزش از مجموعه آموزش های صفر تا صد اندرویدی ست. نیازمندی های این آموزش آشنایی با بکارگیری دوربین در پروژه اندرویدی آشنایی با FileProvider چگونگی...

ایجاد تم تیره در اندروید ۱۰ ۱ (۲)

چگونه در اندروید برنامه ای با تم تیره بسازیم؟ بلاخره در اندروید 10 از دارک تم یا تم تیره برای UI رونمایی شد. امکان جذابی که همیشه جای خالی آن در UI دیده می شد. البته پشتیبانی از تم تیره امکانی بود که در نسخه های دیگر هم پشتیبانی می شد. اما در اندروید 10 گزینه system-level به تنظیمات اصلی دیوایس اندرویدی افزوده شد. با وجود این قابلیت می توان می توان تم تیره را بجز برنامه های مشخص، روی تمام UI دیوایس پیاده نمود. در این مقاله به پیاده سازی دارک تم روی یک برنامه اندرویدی به زبان کاتلین و در...

آموزش الگوی طراحی repository 1.5 (2)

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

کار با فرگمنت ها در معماری تک اکتیویتی

چگونه نتیجه هر فرگمنت را در معماری تک اکتیویتی دریافت کنیم؟ در مقاله های پیشین مزایای استفاده از معماری تک اکتیویتی و پیاده سازی آن را بررسی نموده ایم. برنامه نویسان زیادی استفاده از معماری تک اکتیویتی را توصیه می کنند. در این مقاله می خواهیم یک مشکل را حین کار با معماری تک اکتیویتی بررسی کنیم. برای فرگمنت ها متدی مثل startActivityResult وجود ندارد. اگر با startActivityForResult ناآشنا هستید، متدی ست که با یک request code اجازه به جریان انداختن اکتیویتی را ایجاد می کند. و با تمام شدن پروسه اجرای...

کتابخانه Glide در اندروید

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

افزایش عمر باتری هنگام استفاده از Retrofit 2

استفاده از cache در Retrofit 2 Retrofit 2 کتابخانه قدرتمند برای ارتباط با سرور و دریافت اطلاعات می باشد. هنگام تعامل با سرور موارد زیادی وجود دارند که باید مدیریت شوند. کتابخانه Retrofit 2 به خوبی از عهده این کار بر می آید. پیشتر در مقاله ای به آشنایی و کار با این کتابخانه پرداخته ایم. در این مقاله پیاده سازی قدم به قدم کتابخانه Retrofit در پروژه اندرویدی را بررسی نموده ایم. هنگام تعامل با سرور مواردی باید دانلود شوند. از بین آنها مواردی وجود دارند که تکراری هستند و نباید هر بار که برنامه با...

پیاده سازی RecyclerView با ViewBinding 1 (2)

حذف findViewById در RecyclerView با ViewBinding ساده ترین تعریف از dataBinding حذف مستقیم متد ()findViewById ست. اما چرا این عملکرد باارزش است؟ چون عملیات findViewById برای سیستم هزینه بر می باشد. پیش از این در مقاله ای به آشنایی و چگونگی بکارگیری dataBinding در پروژه اندرویدی پرداخته ایم. اکثر برنامه ها با RecyclerView درگیر می شوند. در این آموزش قصد داریم به صورت قدم به قدم RecyclerView با ViewBinding را پیاده سازیم. تفاوت استفاده از findViewById و ViewBinding پیشگیری از به وجود آمدن Null Exception : در کاتلین این استثنا می تواند مدیریت شود اما...