5

次のように、プログラムでビューを削除して新しいページに設定する ViewPager があります。

private static class ProfilesPagerAdapter extends FragmentStatePagerAdapter
{
        private ArrayList<SherlockFragment> mViews = new ArrayList<SherlockFragment>();
        ...
}  

mProfilesPagerAdapter.mViews.remove(position);
mViewPager.setAdapter(mProfilesPagerAdapter);
mViewPager.setCurrentItem(newPos);

削除されているビューにアニメーションを配置する方法はありますか?

4

1 に答える 1

-1

FragmentPagerAdapter私の解決策は、クラスとsetCustomAnimationsアフターbeginTransactionメソッドをコピーすることでした:

@Override
public Object instantiateItem(ViewGroup container, int position) {
    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
        mCurTransaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
    }
    ...
}



@Override
public void destroyItem(ViewGroup container, int position, Object object) {
    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
        mCurTransaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
    } 

    ...
}

FragmentPagerAdapterのソース

于 2015-01-14T15:21:58.273 に答える