Just implemented RecyclerView
in my code, replacing ListView
.
Everything works fine. The data is displayed.
But error messages are being logged:
15:25:53.476 E/RecyclerView: No adapter attached; skipping layout
15:25:53.655 E/RecyclerView: No adapter attached; skipping layout
for the following code:
ArtistArrayAdapter adapter = new ArtistArrayAdapter(this, artists);
recyclerView = (RecyclerView) findViewById(R.id.cardList);
recyclerView.setHasFixedSize(true);
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
As you can see I have attached an adapter for RecyclerView
.
So why do I keep getting this error?
I have read other questions related to the same problem but none of them help.
36 Answers
Can you make sure that you are calling these statements from the “main” thread outside of a delayed asynchronous callback (for example inside the onCreate()
method).
As soon as I call the same statements from a “delayed” method. In my case a ResultCallback
, I get the same message.
In my Fragment
, calling the code below from inside a ResultCallback
method produces the same message. After moving the code to the onConnected()
method within my app, the message was gone…
LinearLayoutManager llm = new LinearLayoutManager(this);
llm.setOrientation(LinearLayoutManager.VERTICAL);
list.setLayoutManager(llm);
list.setAdapter( adapter );