当从另一个recyclview点击时,如何更新片段内的recyclerview?

时间:2017-07-28 13:11:42

标签: java android android-recyclerview fragment

我有一个viewpager,每个都有两个片段,一个RecyclerView从JSON获取数据,另一个从sqlite DB获取,在第一个回收器中有一个最喜欢的按钮,它插入到数据库中,但是当刷到下一个片段时未更新我希望它在同一时间更新

3 个答案:

答案 0 :(得分:0)

对你的第二个Fragmnet使用setUserVisiblityHint函数,每当片段可见时它会调用,在这里你可以更新你的适配器, 当你滑动你的片段时

@Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if (isVisibleToUser) {
                get your data from DB and notify adapter here
        } 
    }

答案 1 :(得分:0)

在View Pager中加载第一个片段加载第二个片段视图。这是查看寻呼机的默认行为。所以将第二个片段值加载到setUserVisiblityHint中的recycleler视图值。

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    // TODO Auto-generated method stub
    super.setUserVisibleHint(isVisibleToUser);

    if(isVisibleToUser){
        // Load the value to recyclerview
    }
}

答案 2 :(得分:0)

由于您只有两个片段,因此OnCreateView()只会被调用一次。

因此,您应该在RecyclerView中添加负责更新OnResume()的代码:

@Override
public void onResume() {
    super.onResume();
    // Update your RecyclerView from your database
}