如何使FragmentStatePagerAdapter开始从7阵列的特定片段?基于一周的一天,左右滑动即可?

问题描述 投票:0回答:1

我有一个可以访问它每天调度功能。该计划是一个星期,所以FragmentStatePagerAdapter的每个片段对应一个日子。当我访问它,它总是在星期一,那么我可以刷卡左,至周二。请帮帮忙,我一直在寻找了很久的互联网!

问题:当我知道哪一天,我怎么让FragmentStatePagerAdapter开始这一天的片段,并表明这是预先设计的一天的日程安排?

EX:假如今天是星期四,打开它THUR,那么我可以向左滑动至周三或向右滑动即可到周五?


public PagerAdapterScheduler (Context context, FragmentManager fm, String[] arrayDayInWeek) {
        super(fm);
        this.mContext = context;
        this.fragmentManager = fm;
        this.arrayDayInWeek = arrayDayInWeek;
    }

@Override
public Fragment getItem(int i) {
    return FragmentDay.newInstance(i, arrayDayInWeek[i]);
}

@Override
public int getCount() {
    return this.arrayDayInWeek.length;
}

这里是一个天的个别片段的实例化(在另一个FragmentDay.class):

public static final FragmentDay newInstance (int dayNumber, String dayLabel)    {
    FragmentDay fragment = new FragmentDay();
    Bundle bundle = new Bundle();
    bundle.putInt( "dayNumber", dayNumber );
    bundle.putString( "dayLabel", dayLabel );
    fragment.setArguments( bundle );
    return fragment;
}

解:

感谢您推荐这个。我以前也尝试过,但现在它的工作原理。这里是陷阱:

您SET-CURRENT-项目之前,你需要设置适配器:

mViewPager.setAdapter(mPagerAdapterScheduler);
mViewPager.setCurrentItem( Calendar.getInstance().get(Calendar.DAY_OF_WEEK) );
android android-studio android-fragments fragmentstatepageradapter
1个回答
0
投票

只要设置你ViewPager后申请mViewPager.setCurrentItem(yourWeekDay)

© www.soinside.com 2019 - 2024. All rights reserved.