Android ViewからActivityを取得する
はじめに
今回はViewからActivityを取得する方法を紹介します。
ViewからActivityを取得する必要があるケースというのはあまり出会うことはないかもしれませんが、、
ついこの間、必要になったことがあったのでこちらに残しておこうかと思います。
方法
Viewの拡張プロパティに activity というインスタンスを追加するのが早いです。
/** * Activity */ val View.activity: Activity? get() { var context = context while (context is ContextWrapper) { if (context is Activity) { return context } context = context.baseContext } return null }
参照
GoogleのサポートライブラリでViewからActivityを取得する実装がされていました。