首页 > 解决方案 > 处理程序第一次运行函数错误kotlin

问题描述

我正在尝试Handler (). PostDelayed使用 java 作为基础在 kotlin 中做一个,但是这次我得到一个错误,有人可以回答为什么会这样吗?最新的解决方案是什么?以及出于什么原因出现划掉的函数或类,如本例中的 Handler()?:

Handler().postDelayed(Runnable {

            override fun run()
            {
                val sharedPreferences = getSharedPreferences("SharedPref", MODE_PRIVATE)
                var isFirstTime : Boolean = sharedPreferences.getBoolean("firstTime", true)
            }
        }, SPLASH_TIME_OUT.toLong())

在此处输入图像描述

标签: androidkotlin

解决方案


在 Kotlin 中利用 lambda。下面的代码将起作用:

Handler(Looper.getMainLooper()).postDelayed({
                val sharedPreferences = getSharedPreferences("SharedPref", MODE_PRIVATE)
                var isFirstTime : Boolean = sharedPreferences.getBoolean("firstTime", true)
        }, SPLASH_TIME_OUT.toLong())

另请参阅我的回答:如何在 android 中处理已弃用的 Handler


推荐阅读