title: Android RecyclerView dynamically fetch items and add between other items
body: <p>It's been a few days that I'm struggling with a problem.
  Consider a chat app.
  by scrolling up (reaching position 0), older messages fetched and loaded into the recyclerView
  by scrolling down (reaching last position), newer messages fetched and loaded into the recyclerView.</p>
  <p>the thing is . every message can have a parent (reply to another message). by touching the parent message. I want to scroll to that specific message (parent). if that message does not exist in adapter dataset, Api class and  21 messages will be fetched like this (10 messages before reply | reply message | 10 messages after reply)
  and I add that to the recyclerView and use smoothScrollToPosition, to scroll to the reply message.</p>
  <p>now lets say for example position 0 to 21 is fetched with said api, and 22 to 100 is for previously fetched messages.
  there might be some messages (Remote db) between position 21 and 22 that are not fetched by client,
  Is there a way for me to find out and fetch the gap between position 21 to 22 while user is scrolling? lets say the gap is 50 messages and at each api call I get about 20 of them.</p>
  <p>This is driving me crazy.
  so any help would be highly appreciated. :(</p>
  <p>Thanks in advance.</p>