想要一个点击显示计数的效果,循环显示结果,小于1时,+0.25;大于1时,+0.5;大于2.5时,重新设置为0.75。一直循环,目的是为了音乐播放的倍速调节。
布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="50dp">
<Button
android:layout_gravity="center"
android:id="@+id/press_btn"
android:text="count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_marginTop="20dp"
android:layout_gravity="center"
android:id="@+id/text"
android:text="content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
class MainActivity : AppCompatActivity() {
var i = 0
var speedUp = 1f
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val btn :Button = findViewById(R.id.press_btn)
val text :TextView = findViewById(R.id.text)
btn.setOnClickListener {
if (speedUp<2.5f){
if (speedUp<1){
speedUp += 0.25f
}
else{speedUp += 0.5f}
}else{
speedUp = 0.75f
}
text.setText("$speedUp")
}
}
}
这样看着显得啰嗦,用集合list会更加干净一些
class MainActivity : AppCompatActivity() {
var i = 0
val speedList = listOf<Float>(1f,1.5f,2f,2.5f,0.75f)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val btn :Button = findViewById(R.id.press_btn)
val text :TextView = findViewById(R.id.text)
btn.setOnClickListener {
if (i<4) i++ else i =0 //递增用++
text.setText("${speedList[i]}")
}
}
}