title: RecyclerView wont display any data
body: <p>activity_main</p>
  
  <pre><code>&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      xmlns:tools="http://schemas.android.com/tools"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:context=".MainActivity"&gt;
  
  
      &lt;android.support.v7.widget.RecyclerView
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:id="@+id/recyclerview"
         /&gt;
  
  
      &lt;android.support.design.widget.FloatingActionButton
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:id="@+id/floatingactionbutton"
          android:layout_alignParentBottom="true"
          android:layout_alignParentRight="true"
          /&gt;
  
      &lt;SeekBar
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:id="@+id/seekbar"
          android:layout_above="@+id/floatingactionbutton"/&gt;
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>list_item</p>
  
  <pre><code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="wrap_content"
      android:orientation="vertical"
      android:layout_height="wrap_content"&gt;
  
      &lt;TextView
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:id="@+id/textview"
          android:text="hi"/&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>Video</p>
  
  <pre><code>public class Video {
      private String videoUrl;
  
      public Video() {
      }
  
      public Video(String videoUrl) {
          this.videoUrl = videoUrl;
      }
  
      public String getVideoUrl() {
          return videoUrl;
      }
  
      public void setVideoUrl(String videoUrl) {
          this.videoUrl = videoUrl;
      }
  
  }
  </code></pre>
  
  <p>VideoAdapter</p>
  
  <pre><code>public class VideoAdapter extends RecyclerView.Adapter&lt;VideoAdapter.MyViewHolder&gt; {
  
      private List&lt;Video&gt; videoList;
      private Context context;
      public static final String Position="AdapterPosition";
  
      public VideoAdapter(List&lt;Video&gt; videoList, Context context) {
          this.videoList = videoList;
          this.context = context;
      }
  
      @Override
      public VideoAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
          View view = LayoutInflater.from(context).inflate(R.layout.list_item, null);
  
          return new MyViewHolder(view);
      }
  
      @Override
      public void onBindViewHolder(VideoAdapter.MyViewHolder holder, int position) {
          Video contacts = videoList.get(position);
  
          holder.textView.setText("Hi");
          Toast.makeText(context,contacts.getVideoUrl().toString(),Toast.LENGTH_SHORT).show();
      }
  
      @Override
      public int getItemCount() {
  
          return videoList.size();
      }
  
      public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
          public TextView textView;
          private final Context context;
  
          public MyViewHolder(View itemView) {
              super(itemView);
              context = itemView.getContext();
              textView = (TextView) itemView.findViewById(R.id.textview);
              itemView.setOnClickListener(this);
          }
  
          @Override
          public void onClick(View v) {
  
          }
      }
  
  }
  </code></pre>
  
  <p>MainActivity</p>
  
  <pre><code>public class MainActivity extends AppCompatActivity {
  
      private static final String TAG = "MainActivity";
  
      public static final String ANONYMOUS = "anonymous";
      public static final int RC_SIGN_IN = 1;
      private static final int RC_PHOTO_PICKER = 2;
      private String mUsername;
  
      // Firebase instance variables
      private FirebaseDatabase mFirebaseDatabase;
      private DatabaseReference mMessagesDatabaseReference;
      private ChildEventListener mChildEventListener;
      private FirebaseAuth mFirebaseAuth;
      private FirebaseAuth.AuthStateListener mAuthStateListener;
      private FirebaseStorage mFirebaseStorage;
      private StorageReference mChatPhotosStorageReference;
      private FirebaseRemoteConfig mFirebaseRemoteConfig;
  
      private SeekBar seekBar;
  
      private RecyclerView recyclerView;
      private FloatingActionButton floatingActionButton;
      NotificationCompat.Builder notificationBuilder;
      VideoAdapter videoAdapter;
      List&lt;Video&gt; videoList;
  
      NotificationManager notificationManager;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
  
          mUsername = ANONYMOUS;
          recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
          floatingActionButton = (FloatingActionButton) findViewById(R.id.floatingactionbutton);
          videoList = new ArrayList();
  
          // Initialize Firebase components
          mFirebaseDatabase = FirebaseDatabase.getInstance();
          mFirebaseAuth = FirebaseAuth.getInstance();
          mFirebaseStorage = FirebaseStorage.getInstance();
          mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
          seekBar = (SeekBar) findViewById(R.id.seekbar);
  
          mMessagesDatabaseReference = mFirebaseDatabase.getReference().child("videomessages");
          mChatPhotosStorageReference = mFirebaseStorage.getReference().child("videos");
  
          mAuthStateListener = new FirebaseAuth.AuthStateListener() {
              @Override
              public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                  FirebaseUser user = firebaseAuth.getCurrentUser();
                  if (user != null) {
                      // User is signed in
                      onSignedInInitialize(user.getDisplayName());
                  } else {
                      // User is signed out
                      onSignedOutCleanup();
                      startActivityForResult(
                              AuthUI.getInstance()
                                      .createSignInIntentBuilder()
                                      .setIsSmartLockEnabled(false)
                                      .setProviders(
                                              AuthUI.EMAIL_PROVIDER,
                                              AuthUI.GOOGLE_PROVIDER)
                                      .build(),
                              RC_SIGN_IN);
                  }
              }
          };
  
  
          floatingActionButton.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
                  intent.setType("video/*");
                  intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
                  startActivityForResult(Intent.createChooser(intent, "Complete action using"), RC_PHOTO_PICKER);
  
              }
          });
  
  
          attachDatabaseReadListener();
  
      }
  
  
      @Override
      public void onActivityResult(int requestCode, int resultCode, Intent data) {
          super.onActivityResult(requestCode, resultCode, data);
          if (requestCode == RC_SIGN_IN) {
              if (resultCode == RESULT_OK) {
                  // Sign-in succeeded, set up the UI
                  Toast.makeText(this, "Signed in!", Toast.LENGTH_SHORT).show();
              } else if (resultCode == RESULT_CANCELED) {
                  // Sign in was canceled by the user, finish the activity
                  Toast.makeText(this, "Sign in canceled", Toast.LENGTH_SHORT).show();
                  finish();
              }
          } else if (requestCode == RC_PHOTO_PICKER &amp;&amp; resultCode == RESULT_OK) {
              Uri selectedImageUri = data.getData();
              new MyAsyncTask().execute(selectedImageUri);
              // Get a reference to store file at chat_photos/&lt;FILENAME&gt;
  
          }
          ;
      }
  
      @Override
      protected void onResume() {
          super.onResume();
          mFirebaseAuth.addAuthStateListener(mAuthStateListener);
      }
  
      @Override
      protected void onPause() {
          super.onPause();
          if (mAuthStateListener != null) {
              mFirebaseAuth.removeAuthStateListener(mAuthStateListener);
          }
      }
  
      private void onSignedInInitialize(String username) {
          mUsername = username;
          attachDatabaseReadListener();
      }
  
      private void onSignedOutCleanup() {
          mUsername = ANONYMOUS;
  
      }
  
      private void attachDatabaseReadListener() {
  
          mMessagesDatabaseReference.addValueEventListener(new ValueEventListener() {
              @Override
              public void onDataChange(DataSnapshot snapshot) {
                  videoList.clear();
                  for (DataSnapshot postSnapshot : snapshot.getChildren()) {
  
                      Video postSnapshotValue = postSnapshot.getValue(Video.class);
                      if (!videoList.contains(postSnapshotValue)) {
                          videoList.add(postSnapshotValue);
                          Log.i(TAG, "onDataChange: " + videoList);
                      }
  
                  }
  
                  videoAdapter = new VideoAdapter(videoList, getApplicationContext());
                  recyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
  
                  recyclerView.setAdapter(videoAdapter);
  
              }
  
              @Override
              public void onCancelled(DatabaseError databaseError) {
  
  
              }
          });
      }
  
  
      public class MyAsyncTask extends AsyncTask&lt;Uri, Void, Void&gt; {
  
          @Override
          protected void onPreExecute() {
              super.onPreExecute();
  
          }
  
          @Override
          protected Void doInBackground(Uri... params) {
              StorageReference photoRef = mChatPhotosStorageReference.child(params[0].getLastPathSegment());
  
              // Upload file to Firebase Storage
              photoRef.putFile(params[0])
                      .addOnSuccessListener(MainActivity.this, new OnSuccessListener&lt;UploadTask.TaskSnapshot&gt;() {
                          public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                              // When the image has successfully uploaded, we get its download URL
                              //  progressBar.setVisibility(View.VISIBLE);
                              Uri downloadUrl = taskSnapshot.getDownloadUrl();
  
                              // Set the download URL to the message box, so that the user can send it to the database
                              Video video = new Video(downloadUrl.toString());
                              mMessagesDatabaseReference.push().setValue(video);
  
                          }
                      }).addOnProgressListener(new OnProgressListener&lt;UploadTask.TaskSnapshot&gt;() {
                  @Override
                  public void onProgress(UploadTask.TaskSnapshot taskSnapshot) {
                      int  progress = (int) ((100 * taskSnapshot.getBytesTransferred()) / taskSnapshot.getTotalByteCount());
  
                      seekBar.setProgress(progress);
  
                      notificationBuilder = new NotificationCompat.Builder(getApplicationContext())
                              .setColor(ContextCompat.getColor(getApplicationContext(), R.color.colorPrimary))
                              .setSmallIcon(R.mipmap.ic_launcher)
                              .setContentText("Download in progress")
                              .setContentIntent(contentIntent(getApplicationContext()))
                              .setAutoCancel(true);
  
                      if (Build.VERSION.SDK_INT &gt;= Build.VERSION_CODES.JELLY_BEAN) {
                          notificationBuilder.setPriority(Notification.PRIORITY_HIGH);
                      }
  
                      notificationManager = (NotificationManager)
                              getApplicationContext().getSystemService(Context.NOTIFICATION_SERVICE);
  
                      for (int incr = progress; incr &lt;= 100; incr += 5) {
  
  
                          notificationBuilder.setProgress(100, progress, false);
  
                          notificationManager.notify(20, notificationBuilder.build());
  
                      }
                      if(progress&gt;=100){
                          notificationBuilder.setContentText("Download complete").setProgress(0, 0, false);
                          notificationManager.notify(20, notificationBuilder.build());
  
                      }
  
  
  
                  }
              });
             return null;
          }
  
          @Override
          protected void onPostExecute(Void integer) {
              super.onPostExecute(integer);
  
              // Do the "lengthy" operation 20 times
  
          }
  
  
      }
  
      private PendingIntent contentIntent(Context context) {
  
          Intent startActivityIntent = new Intent(context, MainActivity.class);
          return PendingIntent.getActivity(
                  context,
                  0,
                  startActivityIntent,
                  PendingIntent.FLAG_UPDATE_CURRENT);
      }
  
  }
  </code></pre>
  
  <p>I went through all questions on this,but failed to find answer to this question.I have added library for recyclerview in my gradle file.I couldnt figure it out what i was missing.I have implemted RecyclerView many times.But in this project i dont know what am i doing wrong that recyclerview wont display.Please help</p>