آموزش Seekbar متریال دیزاین در اندروید
سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش Seekbar متریال دیزاین در اندروید می پردازیم seekbar را قبلا توضیح داده ایم و نحوه استفاده از آن را نیز در پست های قبلی برای شما قرار داده بودیم امروز به متریال دیزاین کردن آن خواهیم پرداخت در ادامه می توانید پیش نمایشی های از آن را مشاهده کنید با ما همراه باشید.
همانطور که می بینید انواع مختلفی هم دارد به این نوع Seekbar ها Arc Seekbar می گویند.
برای استفاده از این کتاب خانه مثل همیشه عمل می کنیم.
ابتدا وارد فایل Build.gradle از نوع Top Level شده سپس در بخش repositories خط زیر را قرار دهید.
1 2 3 | repositories { maven { url 'https://jitpack.io' } } |
در ادامه وارد فایل Build.gradle از نوع Module شده و در بخش dependencies خط زیر را قرار دهید.
1 2 3 | dependencies { compile 'com.github.marcinmoskala:ArcSeekBar:0.20' } |
پروژه را sync کرده ممکن است به خطاهایی برخورد کنید ما قبلا علت خطاهای گریدل را بررسی کرده ایم کافی است در سایت واژه Gradle را جستجو کنید.
برای اینکه همانند شکل بالا آن را ایجاد کنید از کد زیر استفاده کنید.
1 2 3 | <com.marcinmoskala.arcseekbar.ArcSeekBar android:layout_width="300dp" android:layout_height="150dp" /> |
برای اینکه همانند شکل بالا شود از کد زیر استفاده کنید.
1 2 3 4 5 6 | <com.marcinmoskala.arcseekbar.ArcSeekBar app:thumb="@drawable/thumb2" app:progressColor="@color/colorAccent" app:progressBackgroundColor="@color/colorPrimary" android:layout_width="200dp" android:layout_height="100dp" /> |
و در آخر برای اینکه به شکل زیر شود از کد زیر استفاده کنید.
1 2 3 4 5 6 7 8 9 | <com.marcinmoskala.arcseekbar.ArcSeekBar android:id="@+id/seekArc" android:layout_width="match_parent" android:layout_height="100dp" app:progressBackgroundColor="@color/sliderBack" app:progressBackgroundWidth="20dp" app:progress="100" app:progressWidth="20dp" app:roundEdges="true" /> |
البته برای اینکه دقیقا همانند پینمایش شود یعنی یک طیف رنگ ایجاد کنید باید کد زیر را هم در اکتیویتی قرار دهید.
ابتدا در مسیر res/values وارد colors.xml شده و کدهای زیر را در آن قرار دهید.
1 2 3 4 5 6 | <array name="progressGradientColors"> <item>#b5fff6</item> <item>#00ffdf</item> <item>#00bfa4</item> <item>#007c6a</item> </array> |
سپس در اکتیویتی کد زیر را بنویسید.
1 2 | int[] intArray = getResources().getIntArray(R.array.progressGradientColors); arcSeekBar.setProgressGradient(intArray); |
برای اینکه به view آن دسترسی پیدا کنید مثل زیر عمل کنید.
1 | ArcSeekBar arcSeekBar = findViewById(R.id.seekArc); |
و برای به دست آوردن تغییرات یا همان setOnProgressChangedListener از کد زیر استفاده کنید.
1 2 3 4 5 6 | arcSeekBar.setOnProgressChangedListener(new ProgressListener() { @Override public void invoke(int progress) { Log.i("SeekBar", "Value is " + progress); } }); |
این آموزش هم همانند آموزش های قبلی به پایان رسید.
موفق و پیروز باشید.
سلام
ممنون از بابت آموزش خوبتان
ی جدولی از بنام حساب در دیتابیس دارم می خوام هر وقت این مقدار حساب افزایش پیدا می کنه این سیک بار هم افزایش پیدا کنه؟
با تشکر
خب مقدار رو از دیتابیس بخونید و برابر با max همان seekbar قرار دهید.
سلام
ممنون از سایت خوبتون
میشه بگید توی Arcseekbar چطور میشه رنگ thumb رو تغییر داد؟
وقتی از این app:thumb=”@android:color/darker_gray” ویژگی استفاده میکنم کلا thumb رو حزف میکنه
ممنون میشم راهنماییم کنید
سلام thumb باید یک عکس باشد نه رنگ یک عکس ایجاد کرده و در پوشه drawabale قرار دهید.
ممنون
میدونید چطور میشه padding اطرافش رو 0 کرد؟
عکسی که ایجاد می کنید باید کاملا اندازه باشد. با فتوشاپ این کار را بکنید در مورد padding از کد زیر استفاده کنید.
موفق باشید.
سلام
ممنون از راهنماییتون
ولی منظورم این بود که چطور میتونم padding خود arcseekbar رو از بین ببرم تا از چپ و راست فاصله نداشته باشه
ممنون میشم راهنماییم کنید
می خواهید تمام صفحه بشه ؟
وقتی width رو match_parent قرار میدم هم از چپ و راست فاصله داره
میخوام اون فاصله رو از بین ببرم
سلام متاسفانه این رو نمیشه کاریش کرد.
سلام
چطوری تو اکلیپس با این کتابخونه کار کنم؟؟؟؟
سلام امکان کار کردن این کتاب خانه در eclipse وجود ندارد.
سلام عزیز ممنونم از این معرفی و اموزش خوبتون ایا تلگرام دارین من چند لحظه برای همین کتابخانه مزاحمتون بشم ؟؟ چون مشکل دارم براش کمی اگر تونستین ایدی تلگرامتون رو بدین که بفرسین پی وی اگرم نشد که هیچ ممنونم