第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

我的 RecyclerView 不更新(有時(shí))

我的 RecyclerView 不更新(有時(shí))

慕娘9325324 2023-04-26 14:50:04
我有一個(gè)選項(xiàng)卡式活動(dòng)。每個(gè)片段中都有一個(gè) RecyclerView。例如,如果滾動(dòng)到其他片段并返回,我的 RecyclerView 將不會(huì)更新。如果我只是啟動(dòng)應(yīng)用程序,它就可以工作。為了更新我的 RecyclerView,我更改了例如 driffrent 活動(dòng)中的名稱,并在不同的類中調(diào)用了一個(gè)方法來更新我的 RecyclerView,這只是有時(shí)有效。onResume()當(dāng)您退出活動(dòng)以更改數(shù)據(jù)并返回到片段時(shí),我還嘗試更新整個(gè)片段(在 中)。我發(fā)現(xiàn)問題只在onCreateView片段被第二次調(diào)用時(shí)才會(huì)出現(xiàn)。這是我的片段類:public static class DayFragment extends Fragment {        private static final String SECTION_NUMBER = "section_number";        public DayFragment() {        }        public static DayFragment newInstance(int sectionNumber) {            DayFragment fragment = new DayFragment();            Bundle args = new Bundle();            args.putInt(SECTION_NUMBER, sectionNumber);            fragment.setArguments(args);            return fragment;        }        @Override        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {            View rootView = inflater.inflate(R.layout.fragment_main, container, false);            Day day = new Day(getArguments().getInt(SECTION_NUMBER, 0) - 1, rootView, getContext(), getContext().getFilesDir());            MainActivity.DAYS.add(day);            day.createList();            System.out.println("CREATED" + (getArguments().getInt(SECTION_NUMBER, 0) - 1));            return rootView;        }    }設(shè)置列表:public void createList() {        dayList = day.findViewById(R.id.dayList); // day is the rootView of the fragment passed on to this object of a class        lessonsAdapter = new LessonListAdapter();        dayList.setAdapter(lessonsAdapter);        dayList.setLayoutManager(new LinearLayoutManager(context) {            @Override            public boolean canScrollVertically() {                return false;            }        });        dayList.addItemDecoration(new MarginItemDecoration(context));    }所以請告訴我我需要做什么,以便我的 RecyclerView 每次都會(huì)更新。
查看完整描述

4 回答

?
慕田峪9158850

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊

使用 Hussain answer 并使用此代碼獲取您的片段內(nèi)部onPageSelected方法

Fragment fragment = (Fragment) adaper.instantiateItem(mViewPager, position);


查看完整回答
反對 回復(fù) 2023-04-26
?
HUWWW

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊

每次更改片段時(shí)都必須再次設(shè)置適配器,可以在 onResume 上執(zhí)行此操作。嘗試這樣的事情:


    private void initAdapter(){

    lessonsAdapter = new LessonListAdapter();

    dayList.setAdapter(lessonsAdapter);

    dayList.setLayoutManager(new LinearLayoutManager(context) {

        @Override

        public boolean canScrollVertically() {

            return false;

        }

    });

    dayList.addItemDecoration(new MarginItemDecoration(context));

    }


    @Override

    public void onResume() { initAdapter(); }


查看完整回答
反對 回復(fù) 2023-04-26
?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊

Soo,我找到了解決方案,當(dāng)然我的問題出在其他地方。非常抱歉耽誤了您的時(shí)間,感謝您的努力!

問題是我將新的 Day 對象添加到我的列表中而沒有在onCreateView調(diào)用時(shí)刪除舊的對象,因此新的、更新的數(shù)據(jù)根本沒有顯示。


查看完整回答
反對 回復(fù) 2023-04-26
?
拉丁的傳說

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超8個(gè)贊

實(shí)現(xiàn)ViewPager.OnPageChangeListener然后更新里面的fragment


public class MainActivity extends AppCompatActivity implements ViewPager.OnPageChangeListener {


    ... 

    ...


    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        ...

        ...

        viewPager.addOnPageChangeListener(this);

        ...

        ...

    }


    @Override

    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}


    @Override

    public void onPageSelected(int position) {

        Fragment fragment = adapter.getFragment(position);

        if (fragment != null) {

            // Update fragment here

        }

    }


    @Override

    public void onPageScrollStateChanged(int state) {}

}


查看完整回答
反對 回復(fù) 2023-04-26
  • 4 回答
  • 0 關(guān)注
  • 247 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)