📜  科特林的离散SeekBar

📅  最后修改于: 2021-05-09 18:24:18             🧑  作者: Mango

Android中,离散SeekBar只是对ProgressBar的改进,就像SeekBar一样,SeekBar和离散SeekBar的唯一区别在于离散SeekBar中的区别,我们只能将值设置为离散值,例如1、2、3等。

在本文中,我们将讨论如何在Kotlin中创建SeekBar

Android离散SeekBar的不同属性

XML Attributes Description
android:max Sets the maximum value
android:min Sets the minimum value
android:progress Specifies the already set progress value
android:progressDrawable Sets drawable of the progress mode.
android:thumb Helps to draw a thumb on seekBar..
android:thumbTint Set blending mode to apply the thumb tint.
android:thumbTintMode Set tint to apply on tick mark drawable.
android:tickMarkTint Set blending mode used to apply the tick mark tint.
android:tickMarkTintMode Set blending mode used to apply the tick mark tint.
android:background Sets background of the view
android:id Sets unique id of the view
android:elevation Sets base z-depth of the view

第一步是在Android Studio中创建一个新项目。为此,请按照下列步骤操作:

  • 单击文件,然后依次单击新建和新建项目,并根据需要命名
  • 然后,选择Kotlin语言支持,然后单击下一步按钮。
  • 选择最低的SDK,无论您需要什么
  • 选择清空活动,然后单击完成

完成此操作后,您将在项目/ gradle完成加载后在左侧看到一些目录。它看起来应该像这样:

之后,我们需要设计布局。为此,我们需要使用XML文件。转到应用>资源>布局,然后粘贴以下代码:

修改activity_main.xml文件



  
    
  

笔记:

style=”@style/Widget.AppCompat.SeekBar.Discrete”

。此样式用于显示seekBar,使其适用于离散值。

在MainActivity.kt文件中创建SeekBar

打开app / src / main / Java/yourPackageName/MainActivity.kt并进行以下更改:

package com.geeksforgeeks.myfirstKotlinapp
  
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.SeekBar
import android.widget.Toast
   
class MainActivity : AppCompatActivity() {
   
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
   
        //accesing the seekbar from our layout
        val seekBar = findViewById(R.id.seekBar)
    
        seekBar?.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener {
            override fun onProgressChanged(seekBar: SeekBar, progress: Int, fromUser: Boolean) {
               //here we can write some code to do something when progress is changed
            }
   
            override fun onStartTrackingTouch(seekBar: SeekBar) {
               //here we can write some code to do something whenever the user touche the seekbar
            }
   
            override fun onStopTrackingTouch(seekBar: SeekBar) {
                // show some message after user stopped scrolling the seekbar
                Toast.makeText(this@MainActivity, "Discrete Value of SeekBar is  " + seekBar.progress, Toast.LENGTH_SHORT).show()
            }
        })
   
    }
}

AndroidManifest.xml文件



  
    
        
            
                
  
                
            
        
    
  

作为仿真器运行:

想要一个节奏更快,更具竞争性的环境来学习Android的基础知识吗?
单击此处前往由我们的专家精心策划的指南,以使您立即做好行业准备!