kotlin協程分享
上週在公司做了個分享,轉成圖片發吧
coroutine.001.jpeg
coroutine.002.jpeg
coroutine.003.jpeg
coroutine.004.jpeg
coroutine.005.jpeg
coroutine.006.jpeg
coroutine.007.jpeg
coroutine.008.jpeg
coroutine.009.jpeg
coroutine.010.jpeg
coroutine.011.jpeg
coroutine.012.jpeg
coroutine.013.jpeg
coroutine.014.jpeg
suspend fun displayMyMultipleChoiceDialog(): MyDialogResult { lateinit var result: Continuation<MyDialogResult> AlertDialog.Builder(this) .setTitle(...string resource...) .setMessage(...string resource...) .setPositiveButton(...RETRY string..., { dialogInterface: DialogInterface, _: Int -> dialogInterface.dismiss() result.resume(MyDialogResult.RETRY) }) .setNegativeButton(...CANCEL string..., { dialogInterface: DialogInterface, _: Int -> dialogInterface.dismiss() result.resume(MyDialogResult.CANCEL) }) .setOnCancelListener { result.resume(MyDialogResult.CANCEL) } .create() .show() return suspendCoroutine {continuation -> result = continuation} } fun myPresenterMethod() { launchAsync { when (view.displayMyMultipleChoiceDialog()) { RETRY -> ...do something... CANCEL -> ...do something else... } } }
btw最近準備看一下redex~ 希望能儘快出專題