【发布时间】:2015-12-10 11:09:57
【问题描述】:
我基本上是在视图寻呼机的每个片段上播放动画。当用户滑动到特定片段时播放动画。但是,某些片段在我第二次访问它们时不会播放动画。那是因为视图寻呼机将它们保存在内存中。
用户滑到另一个片段后,我需要销毁每个片段。这样,每次我重新访问这些片段时,动画都会播放。
主视图:
pager = (ViewPager) findViewById(R.id.guidepager);
mAdapter = new NewUserGuideAdapter(getSupportFragmentManager());
pager.setAdapter(mAdapter);
pager.setOffscreenPageLimit(0); //Tried this too. Didnt work
片段:
public class NewUserPage_Two extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_new_user_page__two, container, false);
//Play animation, etc
Animation animation_1 = AnimationUtils.loadAnimation(NewUserPage_Two.this.getActivity(), R.anim.abc_slide_in_bottom);
person1.setAnimation(animation_1);
return rootView;
}
适配器:
public class NewUserGuideAdapter extends FragmentPagerAdapter {
public NewUserGuideAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
return new NewUserPage_One();
case 1:
return new NewUserPage_Two();
case 2:
return new NewUserPage_Three();
case 3:
return new NewUserPage_One();
case 4:
return new NewUserPage_One();
}
return null;
}
@Override
public int getCount() {
// get item count - equal to number of tabs
return 5;
}
}
我该如何修改我的代码?
【问题讨论】:
标签: java android android-layout android-fragments mobile