首页 > 解决方案 > RecyclerView:没有附加适配器;登录时跳过布局

问题描述

我正在尝试使用 Firebase 将列表链接到每辆汽车的类别,但遗憾的是,当我登录应用程序时,类别和汽车未能出现,我只剩下一个空白屏幕。

[数据库在这里][1]

错误日志

  E/RecyclerView: No adapter attached; skipping layout

家庭活动

package com.cars.evd.dealership.main;

import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Adapter;
import android.widget.TextView;
import android.widget.Toast;

import com.cars.evd.dealership.main.Common.Common;
import com.cars.evd.dealership.main.Interface.ItemClickListener;
import com.cars.evd.dealership.main.Model.Category;
import com.cars.evd.dealership.main.ViewHolder.CarViewHolder;
import com.cars.evd.dealership.main.ViewHolder.DealershipViewHolder;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.squareup.picasso.Picasso;

public class Home extends AppCompatActivity
        implements NavigationView.OnNavigationItemSelectedListener {

    FirebaseDatabase database;
    DatabaseReference category;
    TextView txtFullName;

    //Load Menu
    RecyclerView recycler_menu;
    RecyclerView.LayoutManager layoutManager;

    //Firebase Adapter
    FirebaseRecyclerAdapter<Category,CarViewHolder> adapter;




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        toolbar.setTitle("Menu");
        setSupportActionBar(toolbar);

标签: javaandroidxmlfirebaseandroid-adapterview

解决方案


E/RecyclerView:没有附加适配器;跳过布局

这是因为您没有初始化适配器并在没有找到任何时将其添加到 RecyclerView CarCategoryID

//Get intent here
if(getIntent() != null)
    CarCategoryID = getIntent().getStringExtra("CarCategoryID");

// here is the problem
if(!CarCategoryID.isEmpty() && CarCategoryID !=null){
    loadCarsList(CarCategoryID);
}

当您使用CarCategoryID.isEmpty()它检查字符串时,还将检查字符串是否仅包含""。因为您初始化CarCategoryID并且您没有任何intent,所以loadCarsList不会调用该方法并且您不会附加适配器。


推荐阅读