parth.singh71
parth.singh71

Reputation: 362

Using FirebaseUI for firebase recyclerView in android

i am a new comer in android development and facing some problems using firebase ui. i wanted to retrieve data from my firebase database and show it on my recyclerView. but i am constantly getting an error while making FirebaseRecyclerAdapter. Here is My Code Sample:

public class UsersActivity extends AppCompatActivity {

private Toolbar userToolbar;
private RecyclerView usersList;

private DatabaseReference mUsersDatabase;

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

    userToolbar = (Toolbar) findViewById(R.id.users_toolbar);
    setSupportActionBar(userToolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setTitle("Users");

    mUsersDatabase = FirebaseDatabase.getInstance().getReference().child("Users");

    usersList = (RecyclerView) findViewById(R.id.users_list);
    usersList.setHasFixedSize(true);
    usersList.setLayoutManager(new LinearLayoutManager(this));

}

@Override
protected void onStart() {
    super.onStart();

    FirebaseRecyclerAdapter<Users, UsersViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Users, UsersViewHolder>(
            Users.class,
            R.layout.single_user_list_layout,
            UsersViewHolder.class,
            mUsersDatabase
    ) {
        @Override
        protected void onBindViewHolder(@NonNull UsersViewHolder holder, int position, @NonNull Users model) {

            holder.setName(model.getName());

        }

        @NonNull
        @Override
        public UsersViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
            return null;
        }
    };

    usersList.setAdapter(firebaseRecyclerAdapter);

}

public static class UsersViewHolder extends RecyclerView.ViewHolder
{
    View mView;

    public UsersViewHolder(@NonNull View itemView) {
        super(itemView);

        mView = itemView;
    }

    public void setName(String name)
    {
        TextView userNameView = (TextView) mView.findViewById(R.id.single_user_name);
        userNameView.setText(name);
    }

}

}

The Error i'm getting is this:

enter image description here

please help!!

Upvotes: 0

Views: 351

Answers (1)

Jallow
Jallow

Reputation: 49

Sorry wanted to comment but i ain't got enough points to do so. 
Try this first, if it doesnt work try using FirebaseRecyclerOptions 
(The latest   version (3.x) of FirebaseUI implements a different method ofinitializing a FirebaseRecyclerAdapter than previous versions.)    

Make your " firebaseRecyclerAdapter "  variable global, so you would have something like this.


 firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Users, UsersViewHolder>(
        Users.class,
        R.layout.single_user_list_layout,
        UsersViewHolder.class,
        mUsersDatabase
) 

Upvotes: 1

Related Questions