我在 ArrayAdapter 上收到错误消息,说该函数不存在
I am getting error on ArrayAdapter saying that function does not exists
class 第三片段:片段(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {
}
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?,
): View? {
val view2 = inflater.inflate(R.layout.fragment_third, container, false)
val a = arrayOf("Java","C","C++","Python","Kotlin")
var l1: ListView = view2.findViewById(R.id.list)
val adapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, a)
l1.adapter = adapter
return view2
这是在“ArrayAdapter”上按 alt+enter 显示的
None 以下函数可以使用提供的参数调用。
(Context, Int, Array<(out) TypeVariable(T)!>) 其中 T = TypeVariable(T) 用于构造函数 ArrayAdapter(context: Context, resource: Int, objects: Array<(out) T !>) 在 android.widget.ArrayAdapter 中定义
(Context, Int, Int) 其中 T = TypeVariable(T) for 构造函数 ArrayAdapter(context: Context, resource: Int, textViewResourceId: Int) 在 android.widget.ArrayAdapter 中定义
(Context, Int, (Mutable)List) 其中 T = TypeVariable(T) 用于构造函数 ArrayAdapter(context: Context, resource: Int, objects: (Mutable)List) 在 android.widget.ArrayAdapter
中定义
该错误告诉您 ArrayAdapter 构造函数的第一个参数需要是上下文,因此将 this
替换为 returns 上下文的内容,例如 requireActivity()
.
val adapter = ArrayAdapter(requireActivity(), android.R.layout.simple_list_item_1, a)
在此范围内 this
指的是片段,它不是上下文对象。
您可以通过添加一些换行符对该错误消息进行一些分解,使其更易于阅读。它告诉您存在三个具有以下签名的有效构造函数,并且您提供的参数与其中任何一个都不匹配。
None of the following functions can be called with the arguments supplied.
(Context, Int, Array<(out) TypeVariable(T)!>) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, objects: Array<(out) T!>)
defined in android.widget.ArrayAdapter
(Context, Int, Int) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, textViewResourceId: Int)
defined in android.widget.ArrayAdapter
(Context, Int, (Mutable)List<TypeVariable(T)!>) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, objects: (Mutable)List<T!>)
defined in android.widget.ArrayAdapter
class 第三片段:片段(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {
}
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?,
): View? {
val view2 = inflater.inflate(R.layout.fragment_third, container, false)
val a = arrayOf("Java","C","C++","Python","Kotlin")
var l1: ListView = view2.findViewById(R.id.list)
val adapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, a)
l1.adapter = adapter
return view2
这是在“ArrayAdapter”上按 alt+enter 显示的
None 以下函数可以使用提供的参数调用。
(Context, Int, Array<(out) TypeVariable(T)!>) 其中 T = TypeVariable(T) 用于构造函数 ArrayAdapter
该错误告诉您 ArrayAdapter 构造函数的第一个参数需要是上下文,因此将 this
替换为 returns 上下文的内容,例如 requireActivity()
.
val adapter = ArrayAdapter(requireActivity(), android.R.layout.simple_list_item_1, a)
在此范围内 this
指的是片段,它不是上下文对象。
您可以通过添加一些换行符对该错误消息进行一些分解,使其更易于阅读。它告诉您存在三个具有以下签名的有效构造函数,并且您提供的参数与其中任何一个都不匹配。
None of the following functions can be called with the arguments supplied.
(Context, Int, Array<(out) TypeVariable(T)!>) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, objects: Array<(out) T!>)
defined in android.widget.ArrayAdapter
(Context, Int, Int) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, textViewResourceId: Int)
defined in android.widget.ArrayAdapter
(Context, Int, (Mutable)List<TypeVariable(T)!>) where T = TypeVariable(T)
for constructor ArrayAdapter<T : Any!>(context: Context, resource: Int, objects: (Mutable)List<T!>)
defined in android.widget.ArrayAdapter