rze*_*nks 5 java android fragment android-fragments android-viewpager
我一直在研究带有3个标签的TAB布局。
我的问题是我无法更新,请刷新页面之间的第二个选项卡。
根据我的调试,我从选项卡一个滑动到第二个,在getItem(int位置)调用了第三个,类似地,一个片段从第三个选项卡滑动到了第二个。
viewpager 的默认getOffscreenPageLimit为1。我什至无法将其设置为零计数。
在getItem处,位置一开始是1,但是一旦我滑动页面,它只会调用位置0和2。从不调用1。
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
Run Code Online (Sandbox Code Playgroud)
这是我的ViewPagerSetUp
private void setupViewPager(ViewPager viewPager) {
ViewPagerAdapter adapter = new
ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new InvitedFragment(), "Invited");
adapter.addFragment(new InterestedFragment(), "Interested");
adapter.addFragment(new AttendingFragment(), "Attending");
viewPager.setAdapter(adapter);
}
Run Code Online (Sandbox Code Playgroud)
这是我的ViewPager
class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
private final List<String> mFragmentTitleList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
public void refreshFragment(int position) {
mFragmentList.get(position).onResume();
}
@Override
public int getCount() {
return mFragmentList.size();
}
public void addFragment(Fragment fragment, String title) {
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
}
@Override
public CharSequence getPageTitle(int position) {
return mFragmentTitleList.get(position);
}
}
Run Code Online (Sandbox Code Playgroud)
addOnPageChangeListener是一个选项,但我也无法使用pageChangelistener刷新它。
我该如何治愈offpagepagelimit?如何刷新每滑动页面上的每个标签?
谢谢。
尝试这个,
重写fragment中的以下方法。当fragment可见时调用
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
//do your Stuffs
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
541 次 |
| 最近记录: |