CWAC-Pager像FragmentStatePagerAdapter一样使用

时间:2014-10-09 11:03:46

标签: android commonsware-cwac

我正在使用https://github.com/commonsguy/cwac-pager

  

还有另一种ArrayPagerAdapter构造函数,它将RetentionStrategy作为参数。这最终将允许ArrayPagerAdapter像FragmentPagerAdapter(当前)或 FragmentStatePagerAdapter(未来)一样工作。

那么我该如何实现RetentionStrategy?没有太多关于此的信息。它有两种方法:

public interface RetentionStrategy {
    void attach(Fragment fragment, FragmentTransaction currTransaction);

    void detach(Fragment fragment, FragmentTransaction currTransaction);
  }

我在ArrayPagerAdapter中有很多页面,所以当它像FragmentPagerAdapter一样工作时它对内存不利。

1 个答案:

答案 0 :(得分:1)

  

那么我该如何实现RetentionStrategy?

嗯,你可以在代码中看到一个具体的RetentionStrategy,名为KEEP,例如this block from v0.2.3 of the library

理论上,您可以创建采用不同策略的RetentionStrategy的其他具体实现。然后,您会将RetentionStrategy的实例传递给相应的ArrayPagerAdapter构造函数。

在实践中,我怀疑RetentionStrategy本身需要扩展,以使您能够按照FragmentStatePagerAdapter的方式保持状态。

我真诚地希望我能够回到这些图书馆,并在2015年继续推进这些图书馆。对于尚未将此功能添加到图书馆,我深表歉意。