Android 我应该在扩展的ArrayAdapter中使用哪个上下文

Android 我应该在扩展的ArrayAdapter中使用哪个上下文,android,kotlin,Android,Kotlin,我是Android和Kotlin的新手,我想在我的PrestationAdapter类中扩展ArrayAdapter,但我必须提供参数,但我真的不知道应该使用哪个上下文。我可以在Java中完成,而无需传递参数。我不确定上下文是如何工作的,这可能就是我犯错误的原因 我已经尝试过这个,getApplicationContext,getContext和其他一些随机的东西。遗憾的是,这并没有在这种背景下定义 open class PrestationAdapter(act: FragmentActivi

我是Android和Kotlin的新手,我想在我的PrestationAdapter类中扩展ArrayAdapter,但我必须提供参数,但我真的不知道应该使用哪个上下文。我可以在Java中完成,而无需传递参数。我不确定上下文是如何工作的,这可能就是我犯错误的原因

我已经尝试过这个,getApplicationContext,getContext和其他一些随机的东西。遗憾的是,这并没有在这种背景下定义

open class PrestationAdapter(act: FragmentActivity?, resource: Int, arrayList: List<Prestation>): ArrayAdapter<Prestation?>(context!, Int ){
lateinit private var activity: Activity
private val items: List<Prestation>? = arrayList
private var objBean: Prestation? = null
private var row: Int = resource
lateinit var holder: PrestationAdapter.ViewHolder
}
必须将上下文设置为适配器参数

初始化适配器时,必须将上下文作为第一个参数传递。

适配器参数中已经有了context-act:FragmentActivity!把它传给ArrayAdapter


你好你为什么需要背景?这不管用,但我找到了解决方案,多亏了基肖尔·耶萨瓦!我必须通过零碎的活动我不能通过奇怪的行为,但我可以通过零碎的活动,它似乎起了作用。你给了我好方法!非常感谢。
open class PrestationAdapter(act: Context?, resource: Int, arrayList: List<Prestation>): ArrayAdapter<Prestation?>(context!, Int ){
    lateinit private var activity: Activity
    private val items: List<Prestation>? = arrayList
    private var objBean: Prestation? = null
    private var row: Int = resource
    lateinit var holder: PrestationAdapter.ViewHolder
open class PrestationAdapter(act: FragmentActivity?, resource: Int, arrayList: List<Prestation>)
: ArrayAdapter<Prestation?>(act, Int )