Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 有没有办法从fragmentmanager获取上下文?_Android_Kotlin_Kotlin Extension - Fatal编程技术网

Android 有没有办法从fragmentmanager获取上下文?

Android 有没有办法从fragmentmanager获取上下文?,android,kotlin,kotlin-extension,Android,Kotlin,Kotlin Extension,我有一个扩展功能,FragmentManager作为接收器。我至少在75个地方使用过它。现在我想访问该扩展中的SharedReference。我所需要的只是函数中的上下文。有什么方法可以访问上下文吗 下面是函数的外观 inline fun FragmentManager?.loadFragment(...){ .... // Loading of fragment // inside I want context } 您可以从FragmentManager获取上下文,但我不建议这样做

我有一个扩展功能,
FragmentManager
作为接收器。我至少在75个地方使用过它。现在我想访问该扩展中的
SharedReference
。我所需要的只是函数中的上下文。有什么方法可以访问上下文吗

下面是函数的外观

inline fun FragmentManager?.loadFragment(...){
 ....
 // Loading of fragment
 // inside I want context
}
您可以从
FragmentManager
获取上下文,但我不建议这样做

 inline fun FragmentManager?.loadFragment() {
    // Get the context of the last fragment added to the fragment manager
    val context = this?.fragments?.last()?.context

 }

上面的答案返回null
context
,因为@Thomas不建议使用。所以我引用了。

重载方法
loadFragment
,使用上下文作为参数..我想是这样的,我使用了可选的参数,但我不能这样做,因为它在多个地方使用,这就是我问的原因。您无法从
片段管理器
获取上下文,所以我认为这是您应该做的。。在某些情况下,您可能不需要上下文,因此可以利用这两种变体。我就是这样做的,唯一的区别是我使用了
findFragmentById
,我对上下文的需要在第二个片段之后。这就解决了我的问题。谢谢你的帮助