Android 新增Lifecycle觀察

Lifecycle是Android運作流程非常重要的一部分

要如何為一個Class,添加一個Lifecycle觀察,請參考下方程式碼,參考於Android官網

class MainActivity : AppCompatActivity() {
    private var myLifecycleObserver: MyLifecycleObserver? = null
    override fun onCreate(savedInstanceState: Bundle?) {
        myLifecycleObserver = MyLifecycleObserver().also {
            //為testClass添加觀察
            lifecycle.addObserver(it)
        }
    }
    override fun onResume() {
        super.onResume()
        println("${javaClass.simpleName} onResume")
    }
}

//其他的生命週期可以至Lifecycle.Event裡面查看
class MyLifecycleObserver: LifecycleObserver {
    @OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
    fun initCamera() {
        println("${javaClass.simpleName} initCamera")
    }
}

//打印結果
//MainActivity onResume
//MyLifecycleObserver initCamera

相關文章

Android生命週期Android startActivity其他用法
Android startActivityForResult棄用?Android Launch modes使用分析整理

訂閱Codeilin的旅程,若有最新消息會通知。

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

WordPress.com.

向上 ↑

%d 位部落客按了讚: