diff --git a/src/main/java/androidx/core/view/View.kt b/src/main/java/androidx/core/view/View.kt index bc2e34db..d0de52df 100644 --- a/src/main/java/androidx/core/view/View.kt +++ b/src/main/java/androidx/core/view/View.kt @@ -18,6 +18,8 @@ package androidx.core.view +import android.app.Activity +import android.content.ContextWrapper import android.graphics.Bitmap import android.view.View import android.view.ViewGroup @@ -177,6 +179,22 @@ inline fun View.postOnAnimationDelayed( return runnable } +/** + * Returns the parent [Activity] of this [View]. + * + * If this View is not attached to any [Activity], this method will return null. + */ +inline fun View.getParentActivity(): T? { + var context = this.context + while (context is ContextWrapper) { + if (context is T) { + return context + } + context = context.baseContext + } + return null +} + /** * Return a [Bitmap] representation of this [View]. *