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