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~ 希望能儘快出專題