2014-10-09 60 views
0

我使用https://github.com/commonsguy/cwac-pagerCWAC尋呼機使用像FragmentStatePagerAdapter

還有就是ArrayPagerAdapter構造,即需要一個RetentionStrategy作爲參數的另一種風味。這最終將允許ArrayPagerAdapter工作,或者像FragmentPagerAdapter(current)或FragmentStatePagerAdapter(將來)

那麼我該如何實現RetentionStrategy?關於這方面的信息並不多。它有兩個方法:

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

    void detach(Fragment fragment, FragmentTransaction currTransaction); 
    } 

我在ArrayPagerAdapter多頁,所以當它像FragmentPagerAdapter這是不好的內存。

回答

1

那麼我該如何實現RetentionStrategy?

好了,你可以看到一個具體RetentionStrategy,命名爲KEEP,在代碼中,如this block from v0.2.3 of the library

理論上,您可以創建其他具體實施RetentionStrategy,採用不同的政策。然後,您會將RetentionStrategy的實例傳遞給合適的ArrayPagerAdapter構造函數。

在實踐中,我懷疑RetentionStrategy本身將需要擴展,以使您可以按照FragmentStatePagerAdapter的方式保持狀態。

我真誠地希望我能夠回到這些圖書館,並在2015年繼續推動他們。我對沒有將此功能添加到圖書館表示歉意。