গুগল ফিট অ্যাপ্লিকেশনগুলির মতো একটি বৃত্তাকার অগ্রগতি বারটি কীভাবে তৈরি করবেন সে সম্পর্কে আপনার কোনও ধারণা আছে? নীচের চিত্রটি পছন্দ করুন।
গুগল ফিট অ্যাপ্লিকেশনগুলির মতো একটি বৃত্তাকার অগ্রগতি বারটি কীভাবে তৈরি করবেন সে সম্পর্কে আপনার কোনও ধারণা আছে? নীচের চিত্রটি পছন্দ করুন।
উত্তর:
আপনি এই চেনাশোনা অগ্রগতি লাইব্রেরি চেষ্টা করতে পারেন
দ্রষ্টব্য: অগ্রগতি দেখার জন্য দয়া করে সর্বদা একই প্রস্থ এবং উচ্চতা ব্যবহার করুন
DonutProgress:
<com.github.lzyzsd.circleprogress.DonutProgress
android:id="@+id/donut_progress"
android:layout_marginLeft="50dp"
android:layout_width="100dp"
android:layout_height="100dp"
custom:circle_progress="20"/>
CircleProgress:
<com.github.lzyzsd.circleprogress.CircleProgress
android:id="@+id/circle_progress"
android:layout_marginLeft="50dp"
android:layout_width="100dp"
android:layout_height="100dp"
custom:circle_progress="20"/>
ArcProgress:
<com.github.lzyzsd.circleprogress.ArcProgress
android:id="@+id/arc_progress"
android:background="#214193"
android:layout_marginLeft="50dp"
android:layout_width="100dp"
android:layout_height="100dp"
custom:arc_progress="55"
custom:arc_bottom_text="MEMORY"/>
এটি নিজের তৈরি করা সহজ
আপনার বিন্যাসে ProgressBar
একটি নির্দিষ্ট অঙ্কনযোগ্য নিম্নলিখিতগুলি অন্তর্ভুক্ত করুন ( নোটের পরিবর্তে মাত্রাগুলি থেকে প্রস্থটি পাওয়া উচিত )। সর্বাধিক মান এখানে গুরুত্বপূর্ণ:
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:max="500"
android:progress="0"
android:progressDrawable="@drawable/circular" />
নিম্নলিখিত আকারের সাথে এখন আপনার সংস্থানগুলিতে অঙ্কনযোগ্য তৈরি করুন। ব্যাসার্ধ (আপনি innerRadius
পরিবর্তে ব্যবহার করতে পারেন innerRadiusRatio
) এবং বেধ মানগুলির সাথে খেলুন ।
বিজ্ঞপ্তি (প্রাক ললিপপ বা এপিআই স্তর <21)
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp" >
<solid android:color="@color/yourColor" />
</shape>
বিজ্ঞপ্তি (> = ললিপপ বা এপিআই স্তর> = 21)
<shape
android:useLevel="true"
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp" >
<solid android:color="@color/yourColor" />
</shape>
useLevel হয় "FALSE" এপিআই লেভেল 21 (Lollipop এ) ডিফল্টরূপে।
অ্যানিমেশন শুরু করুন
আপনার কোডের পরবর্তী আপনার লেআউটের ObjectAnimator
অগ্রগতি ক্ষেত্রটিকে প্রাণবন্ত করতে একটি ব্যবহার করুন ProgessBar
।
ProgressBar progressBar = (ProgressBar) view.findViewById(R.id.progressBar);
ObjectAnimator animation = ObjectAnimator.ofInt(progressBar, "progress", 0, 500); // see this max value coming back here, we animate towards that value
animation.setDuration(5000); // in milliseconds
animation.setInterpolator(new DecelerateInterpolator());
animation.start();
অ্যানিমেশন বন্ধ করুন
progressBar.clearAnimation();
PS উপরের উদাহরণগুলির মতো নয়, এটি মসৃণ অ্যানিমেশন দেয়।