我有这个功能
val client = NetworkService()
val call = client.getService().getAllPost()
call.enqueue(object : Callback<ArrayList<Post>>{
override fun onFailure(call: Call<ArrayList<Post>>, t: Throwable) {
Toast.makeText(this@MainActivity, "Get post failed", Toast.LENGTH_LONG).show()
}
override fun onResponse(
call: Call<ArrayList<Post>>,
response: Response<ArrayList<Post>>) {
response.body()?.let{
post ->
adapter?.updateData(post)
}?: kotlin.run {
Toast.makeText(this@MainActivity, "Get post failed", Toast.LENGTH_LONG).show()
}
}
})
}
Run Code Online (Sandbox Code Playgroud)
*并有错误*
Type mismatch: inferred type is <no name provided> but Callback<Post!>! was expected
在call.enqueue(object : Callback<ArrayList<Post>>
回调 ArrayList 中不想使用对象,不知道为什么
请帮忙这个
我尝试在一个协程中初始化三个收集,但仅第一个起作用。仅当我设置在不同的协程中收集其工作时。为什么?
lifecycleScope.launch {
launch {
homeViewModel.dateStateFlow().collect { date ->
date?.let { calendar.text = date.toStringForView() }
}
}
launch {
homeViewModel.toStateFlow().collect { to ->
to?.let { cityTo.text = to.name }
}
}
launch {
homeViewModel.fromStateFlow().collect { from ->
from?.let { cityFrom.text = from.name }
}
}
}
Run Code Online (Sandbox Code Playgroud)