سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش Seekbar به زبان کوتلین در برنامه نویسی اندروید می پردازیم قبلا آموزش seekbar را به زبان جاوا در سایت قرار دادیم امروز درصدد آمدیم تا آموزش Seekbar به زبان کوتلین را نیز برای شما قرار دهیم در ادامه با ما همراه باشید.
در صورتی نمی دانید برنامه نویسی کوتلین چیست ؟ در سایت واژه کوتلین چیست را جستجو کنید.
قبل از اینکه شروع به برنانه نویسی کنیم لازم است زبان کوتلین را به اندروید استودیو اضافه کنیم برای اینکار کافی است همانند آموزش زیر پیش بروید.
بعد از اینکه کوتلین را به اندروید استودیو اضافه کردید می توانیم برنامه نویسی را شروع کنیم.
ابتدا یک layout به نام activity_main.xml ایجاد کرده و کدهای زیر را در آن قرار دهید.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<SeekBar
android:id="@+id/sb_slider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="20dp"/>
<TextView
android:id="@+id/tv_result"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:textSize="30sp"
android:text="888"/>
</LinearLayout>
در بالا ما یک Seekbar و یک TextView برای نمایش نتیجه آن قرار داده ایم.
سپس یک اکتیویتی به نام MainActivity.kt ایجاد کرده و کدهای زیر را در آن قرار دهید.
package ir.programchi
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.widget.SeekBar
import android.widget.TextView
class SeekBarActivity : AppCompatActivity() {
lateinit var slider : SeekBar
lateinit var value : TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
slider = findViewById(R.id.sb_slider) as SeekBar
value = findViewById(R.id.tv_result) as TextView
slider.max = 50
slider.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener{
override fun onProgressChanged(seekBar: SeekBar?, progress: Int, fromUser: Boolean) {
value.text = "Seeking to : " + progress.toString()
}
override fun onStartTrackingTouch(seekBar: SeekBar) {
value.text = "started at : " + seekBar.progress
}
override fun onStopTrackingTouch(seekBar: SeekBar) {
value.text = "selected : " + seekBar.progress
}
})
}
}
در بالا ابتدا View های مربوط به Seekbar و Textview را find کردیم سپس مقدار بیشترین حالت Seekbar را برابر با 50 قرار داده ایم بعد از آن برای Seekbar رویداد setOnSeekBarChangeListener تعرف کردیم اگر آموزش های جاوا را به یاد بیارید همانند آن است رویداد ما به سه بخش onProgressChanged (تغییر حالت اولیه) , onStartTrackingTouch (تغییر حالت دوم یا شروع کاربر به لمس کردن seekbar ) و onStopTrackingTouch (رها کردن seekbar) توسط کاربر تقسیم می شود که با اتفاق افتادن هر کدام از این رویداد ها مقدار آن در TextView نمایش داده می شود.
این آموزش هم به پایان رسید.
موفق باشید.
مطالعه بیشتر