E/ RecyclerView: адаптер не подключен; пропуск макета (СПРАВКА)

#java #android-studio #android-recyclerview #android-adapter

#java #android-studio #android-recyclerview #android-адаптер

Вопрос:

я создаю свое первое приложение в Android Studio. Цель приложения — подключиться к моему API веб-сайта Drupal и получать из него данные.

В моем коде нет видимых ошибок, но когда я использую logcat, он продолжает выдавать следующую ошибку:

 E/RecyclerView: No adapter attached; skipping layout
 

Это часть моего кода:

 public class MainActivity extends AppCompatActivity implements ExampleAdapter.onItemClickListener {

public static final String EXTRA_TITLE = "title";
public static final String EXTRA_BODY = "body";
public static final String EXTRA_LINK = "link";


private RecyclerView mRecyclerView;
private ExampleAdapter mExampleAdapter;
private ArrayList<ExampleItem> mExampleList;
private RequestQueue mRequestQueue;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mRecyclerView = findViewById(R.id.recycler_view);
    mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
    mRecyclerView.setHasFixedSize(true);


    mExampleList = new ArrayList<>();

    mRequestQueue = Volley.newRequestQueue(this);
    parseJSON();


}
 

Я уже просматривал похожие вопросы в Stack, но ни один из них не исправил это.

Комментарии:

1. Йигит Бояр (разработчик в Google за RecyclerView) сказал: «Вы можете игнорировать это. или, если вы хотите избавиться от него, установите пустой адаптер при инициализации RecyclerView «. Я просто игнорирую это сегодня. это не важно

2. Я не могу игнорировать это, поскольку приложение сейчас ничего не отображает ^^

3. Ох. Тогда, безусловно, проблема не в этой ошибке. пожалуйста, опубликуйте код вашего класса адаптера и весь код activity. Например, проверьте, не возвращает ли ваш getItemCount() 0, и что вы вызываете notifyDataSetChanged() после отправки списка вашему адаптеру.

4. Адаптер pastebin.com/rBZwkU7E Основная активность pastebin.com/S88WwGW9

Ответ №1:

вы не устанавливаете mRecyclerView для своего адаптера

mExampleAdapter.adapter = your adaper

Комментарии:

1. Я сделал здесь: mExampleAdapter = новый ExampleAdapter(MainActivity.this, mExampleList); mRecyclerView.setAdapter(mExampleAdapter); mExampleAdapter.setOnClickListener(MainActivity.this, новый ExampleAdapter. OnItemClickListener() {