如何在 Kotlin 中获取 ClusterManager 的上下文
How to get Context for ClusterManager in Kotlin
我可以使用哪个上下文在 Kotlin 中初始化 ClusterManager Android?
var clusterManager: ClusterManager<MarkerCluster>? = null
clusterManager = ClusterManager(context, map);
Which Context i could use to init the ClusterManager in Kotlin Android?
这取决于您使用的地方clusterManager = ClusterManager(context, map);
例如,如果您在任何 activity 中使用它,请像这样使用
clusterManager = ClusterManager(this, map);
// or
clusterManager = ClusterManager(this@LoginActivity, map);
例如,如果您在任何片段中使用它,请像这样使用
class FragmentOne : Fragment() {
var mContext: Context? = null
override fun onAttach(context: Context) {
super.onAttach(context)
mContext = context
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
val rootView = inflater.inflate(R.layout.fragment_one, container, false)
clusterManager = ClusterManager(mContext, map)
return rootView
}
}
注意
您可以使用 getActivity()
和 getContext()
在片段 context
中获取 context
但是 getActivity()
可以 return null
所以我建议你应该使用 onAttach()
在 fragment
中获取 context
我可以使用哪个上下文在 Kotlin 中初始化 ClusterManager Android?
var clusterManager: ClusterManager<MarkerCluster>? = null
clusterManager = ClusterManager(context, map);
Which Context i could use to init the ClusterManager in Kotlin Android?
这取决于您使用的地方clusterManager = ClusterManager(context, map);
例如,如果您在任何 activity 中使用它,请像这样使用
clusterManager = ClusterManager(this, map);
// or
clusterManager = ClusterManager(this@LoginActivity, map);
例如,如果您在任何片段中使用它,请像这样使用
class FragmentOne : Fragment() {
var mContext: Context? = null
override fun onAttach(context: Context) {
super.onAttach(context)
mContext = context
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
val rootView = inflater.inflate(R.layout.fragment_one, container, false)
clusterManager = ClusterManager(mContext, map)
return rootView
}
}
注意
您可以使用 getActivity()
和 getContext()
在片段 context
中获取 context
但是 getActivity()
可以 return null
所以我建议你应该使用 onAttach()
在 fragment
context