قبلا توی این آموزش  گفتم که چه جوری میتونید یه نمودار میله ای بسازید . توی این آموزش که خیلی به روز تر و شیک تر هست ، دو تا نمواد میسازیم ، میله ای و دایره ای ، که همراه با انیمیشن هم هست . یعنی اعداد و ارقام و ستون ها به صورت انیمیشن لــود میشن . 

اول از همه چون میخوایم از یه کتابخونه مخصوص استفاده کنیم ، اون کتابخونه رو توی فایل app/build.gradle اضافه میکنیم : 

اضافه کردن نمودار میله ای و دایره ای مثه هم هست که من دایره ای رو توضیح میدم . ببینید ، اول میایم یه لایوت میسازیم به اسم activity_pie_chart.xml با این کدها : 

توی کد بالا ، نمودار رو توی یه LinearLayout میندازیم و واسه اینکه بتونیم نمودار رو هم رسم کنیم ، از PieChart که اون کتابخونه در اختیارمون قرار داده استفاده میکنیم و کدش رو اضافه میکنیم 

حالا یه اکتیویتی جدید میسازیم واسه لایوت بالا . اسم اکتیویتی رو میذاریم PieChartActivity . میخوایم واسه مثال ، تعداد کارمندهای یه شرکت رو مثلا نشون بدیم ، توی سال های مختلف . واسه اینکه تعداد کارمندها رو اضافه کنیم ، باید یه ArrayList بسازیم و اعداد رو وارد کنیم . خوب ، این میشه کدهاش : 

توی کدهای بالا اگه دقت کنید ، میبینید که بعد از عددها ، یه f هم اومده که کاری به کارش نداریم ! قانون همون کتابخونه ست . و از ۰ تا ۹ هم نوشتیم ، که یعنی موقع لود شدن انیمیشن به ترتیب اعداد لود بشن . با استفاده از PieDataSet هم گفتیم که این اطلاعات رو باید ست کنی و نمایش بدی ( موقع اجرای برنامه متوجه منظورم میشین ) 

و واسه اضافه کردن تعداد سال ها هم باید یه ArrayList تعریف کنیم که تعداد عناصرش دقیقا برابر باشه با ArrayList قبلی که تعریف کردیم . این کدها : 

توی خط آخر کدهای بالا گفتیم که تعداد سال ها رو با تعداد کارمندان مــَـچ کن و نمایش بده .

واسه اینکه از چه الگوی رنگی واسه ستون ها استفاده بشه از این کد استفاده میکنیم : 

و واسه اینکه مدت زمان لود شدن و سریع و کند بودن انیمیشن رو مشخص کنیم از این کد استفاده میکنیم : 

ساخت نمودار میله ای هم دقیقا مثه بالا هست که توی سورس میتونید نگاه کنید خودتون 

و خروجی برنامه : 


و سورس رو هم که میتونید دانلود کنید : 

دانلود سورس

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

مجتبی صابری


همه عشقم برنامه نویسی هست | t.me/kotlin9


پیمایش نوشته


پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *