在Kotlin中的适配器中调用时,在AlertDialog.Builder()中设置上下文的方法是通过使用适配器所在的Activity或Fragment的上下文来设置。
例如,在Activity中的适配器中调用时,可以使用this
关键字来获取当前Activity的上下文,代码示例如下:
val adapter = ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, dataList)
val builder = AlertDialog.Builder(this)
builder.setAdapter(adapter) { dialog, which ->
// 处理点击事件
}
builder.show()
在Fragment中的适配器中调用时,可以使用requireContext()
方法来获取当前Fragment的上下文,代码示例如下:
val adapter = ArrayAdapter<String>(requireContext(), android.R.layout.simple_list_item_1, dataList)
val builder = AlertDialog.Builder(requireContext())
builder.setAdapter(adapter) { dialog, which ->
// 处理点击事件
}
builder.show()
需要注意的是,适配器所在的Activity或Fragment必须是已经创建并可见的状态,否则可能会导致上下文获取失败或引发其他错误。
领取专属 10元无门槛券
手把手带您无忧上云