作爲標題,是否有任何方式在Kotlin
延遲後(例如1秒)調用函數?如何在Kotlin中延遲後調用函數?
回答
您可以使用Schedule
inline fun Timer.schedule(
delay: Long,
crossinline action: TimerTask.() -> Unit
): TimerTask (source)
也有使用Handler -> postDelayed
Handler().postDelayed({
//doSomethingHere()
}, 1000)
請補充說它只適用於android,因爲這個問題需要一個通用的kotlin方法(雖然它的確有Android標籤) –
從你這邊來看,這並不具有建設性。因此當用戶搜索android標籤時可能會認爲這是錯誤的答案。 –
val timer = Timer()
timer.schedule(timerTask { nextScreen() }, 3000)
你能解釋我爲什麼我需要寫「timerTask」而不是大括號? –
@HugoCastelani:你不需要.. –
一個簡單的例子3秒後,顯示敬酒一個選項:
fun onBtnClick() {
val handler = Handler()
handler.postDelayed({ showToast() }, 3000)
}
fun showToast(){
Toast.makeText(context, "Its toast!", Toast.LENGTH_SHORT).show()
}
你必須導入以下兩個庫:
import java.util.*
import kotlin.concurrent.schedule
後以這種方式使用它:
Timer().schedule(10000){
//do something
}
- 1. Cocos2D CCSpeed延遲後調用函數
- 2. 如何延遲函數調用?
- 3. Kotlin:如何使用擴展功能延遲運行函數
- 4. 延遲函數調用
- 5. Jquery延遲函數調用
- 6. 延遲函數調用
- 7. 延遲函數調用jquery
- 8. 延遲函數調用 - Python
- 9. 如何在延遲後調用方法?
- 10. 在OS X上延遲函數調用
- 11. 如何在java中的函數調用之間添加延遲?
- 12. 如何在python中延遲調用函數?
- 13. 如何在Rails的回調函數中使用延遲作業
- 14. 如何在tkinter中延遲調用函數?
- 15. 如何在jquery中延遲調用自定義函數
- 16. 如何使用Kotlin中的參數進行延遲初始化
- 17. 如何延遲jQuery函數
- 18. 延遲後調用方法?
- 19. 如何在jQuery中延遲ajax調用?
- 20. 延遲構造函數調用
- 21. 使用jquery回調函數延遲
- 22. jquery/backbone.js - 延遲函數調用
- 23. 如何在Android中使用rxjava延遲後調用方法?
- 24. 延遲後調用方法(帶參數)
- 25. 使用setTimeout(函數,延遲)的函數之間的JavaScript延遲
- 26. 在調用函數之前在.hover()回調函數中添加一個延遲
- 27. JQUERY中的AJAX調用後的延遲
- 28. 查看drawRect僅在延遲後調用
- 29. 調用JavaScript函數後放置延遲的最佳方式
- 30. Kotlin - 如何遞歸調用lambda函數
謝謝!超級簡單。在這裏找到一個例子http://jamie.mccrindle.org/2013/02/exploring-kotlin-standard-library-part-3.html 'Timer(「SettingUp」,false).schedule(500){doSomething() }' –
這不會編譯 –
它編譯時,如果你添加這兩個導入: import java.util.Timer和import kotlin.concurrent.schedule – Customizer