android - 处理程序第一次运行函数错误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())
解决方案
在 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
推荐阅读
- linux - Linux 进程正在运行但正常运行时间仍为 0:00:00
- android - 在 Android 11 中,我无法从文档选项中获取文件路径
- spring-boot - 在 spring-boot 升级到 2.2.0.RELEASE 后 Elasticsearch 不工作
- php - Laravel 8 中没有出现成功的绿色框
- python - 从python中的字典中删除重复项
- sql - 如何在 PostgreSQL 中删除所有具有特定值的 JSON 属性
- javascript - 前端没有使用livewire和alpinejs填充数据,如何获取数据?
- c++ - BoostRoot 指向“”空目录,我在哪里更改其值以设置永久目录?
- vue.js - BootstrapVue 表数据无法使用 Vuex getter 排序
- elasticsearch - 如何查询每个字段?