0

Recyclerview is not showing on screen just show white background.

Is it there any mistake? Please tell me, thanks.

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) {

    }

}

Fragment

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
    }

}

I want to show just items on recyclerview.

user2342558
  • 5,567
  • 5
  • 33
  • 54
Sam
  • 31
  • 2
  • 6
  • 1
    The above code is used for initialization of Recyclerview with configuration of adapter. I don't see any code related to working with data and design. Please post the code for Data and Design. – Ashish Sep 23 '19 at 10:23
  • 1
    post your XML files here. Activity and Item – Lakhwinder Singh Sep 23 '19 at 10:29
  • actually you inflate the layout but returns a null view. change "return view" to "return layout" and set the LayoutManager to the recyclerview. And you do not need to call notifyDataSetChanged( – Oshan Madusanka Sep 23 '19 at 11:29

1 Answers1

6

You have missed setting layout manager

recyclerView.layoutManager = LinearLayoutManager(this, LinearLayoutManager.VERTICAL ,false)
muthugiridharan
  • 120
  • 1
  • 4