【发布时间】:2020-01-23 09:30:31
【问题描述】:
Recyclerview 没有显示在屏幕上,只显示白色背景。
有什么错误吗?请告诉我,谢谢。
Adapter
class NeedsAdapter(var context: Context) : RecyclerView.Adapter<NeedsAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): NeedsAdapter.ViewHolder {
var view = View.inflate(parent.context, R.layout.needs_item, null)
var parms = ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)
view.layoutParams = parms
return ViewHolder(view)
}
override fun getItemCount(): Int {
return 10;
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
}
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
}
}
片段
class NeedsFragment : Fragment() {
private lateinit var adapter: NeedsAdapter
private lateinit var layout: View
private lateinit var recyclerView: RecyclerView
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
layout = inflater.inflate(R.layout.fragment_needs, container, false)
adapter = NeedsAdapter(this!!.activity!!)
recyclerView = layout.findViewById(R.id.recyclerview)
recyclerView.addItemDecoration(DividerItemDecoration(context!!, LinearLayoutManager.VERTICAL))
recyclerView.adapter = adapter
adapter.notifyDataSetChanged()
return view
}
}
我只想在 recyclerview 上显示项目。
【问题讨论】:
-
以上代码用于Recyclerview的初始化,配置适配器。我没有看到任何与处理数据和设计相关的代码。请发布数据和设计的代码。
-
在此处发布您的 XML 文件。活动和项目
-
实际上你膨胀了布局但返回了一个空视图。将“返回视图”更改为“返回布局”并将 LayoutManager 设置为 recyclerview。而且你不需要调用 notifyDataSetChanged(
标签: android kotlin android-recyclerview adapter listitem