如何在RecyclerView中默认启用新数据显示?

时间:2018-05-19 09:45:03

标签: java android

我有一个从实时firebase数据库中读取数据的应用程序,当发布新数据时,它会显示在所有其他数据的底部,但这不是我想要的,我希望在顶部显示新数据由旧的,取决于他们发送的时间和日期。此数据显示在RecyclerView中。

这是我的.xml文件:

<android.support.v7.widget.RecyclerView
    android:id="@+id/recyclerView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:listitem="@layout/item" />

这里是onCreate中的代码:

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

    BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
    navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);

    final RecyclerView recyclerView = findViewById(R.id.recyclerView);
    recyclerView.setHasFixedSize(true);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    productsList = new ArrayList<>();
    productAdapter = new Adapter(this, productsList);
    recyclerView.setAdapter(productAdapter);


}

如何解决我的问题。顶部的新数据和底部的最旧数据按顺序

1 个答案:

答案 0 :(得分:0)

您可以通过

实现相同目标
LinearLayoutManager mLayoutManager = new LinearLayoutManager(MainActivity.this);
mLayoutManager.setReverseLayout(true);
mLayoutManager.setStackFromEnd(true);
// And now set it to the RecyclerView
mRecyclerView.setLayoutManager(mLayoutManager);
mRecyclerView.setAdapter(yourAdapter);