日々是好日~every day is a good day~

日常の中の非日常の備忘録

【Android Studio】Handler

Android Studio kotlinのメソッドパーツ化
今回はHandlerです
Handlerはtimeミリ秒後に指定の処理をするものです

Handler().postDelayed( { /*処理*/  }, time )

使用例はこちら(xmlファイルは省略します)

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Handler
import android.view.View
import android.widget.Button
import android.widget.TextView

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        val bt:Button = findViewById(R.id.btstart)
        val tv1:TextView = findViewById(R.id.tv1)
        val tv2:TextView = findViewById(R.id.tv2)
        val tv3:TextView = findViewById(R.id.tv3)

        tv1.setVisibility(View.INVISIBLE)
        tv2.setVisibility(View.INVISIBLE)
        tv3.setVisibility(View.INVISIBLE)
        bt.setOnClickListener {
            Handler().postDelayed( { tv1.setVisibility(View.VISIBLE) }, 1000 )
            Handler().postDelayed( { tv2.setVisibility(View.VISIBLE) }, 2000 )
            Handler().postDelayed( { tv3.setVisibility(View.VISIBLE) }, 3000 )
        }
    }
}

スタートボタンを押すと1秒後に1秒テキスト 2秒後に2秒テキスト 3秒後に3秒テキストが表示されます