循环通过片段状态为空

时间:2015-11-21 17:45:17

标签: android

我正在使用一个包含问题的X片段的viewpager。每个片段都从相同的片段类扩展,以便我可以在循环中的每个片段上调用一个方法。这就是我的意思:

     private int correctAnswers(){
        int NumberCorrect = 0;
        var activity = Activity as QuizActivity;
        var adapter = activity.getViewPagerAdapter ();
        List<questionFrag> fragList = new List<questionFrag> ();

        for (int i = 0; i < activity.getViewPagerAdapter ().Count - 1; i++) {
            var questionfrag = adapter.GetItem (i) as questionFrag;
            if (questionfrag.isCorrect()) {
                ++NumberCorrect;
            }
        }
        return NumberCorrect;
    }

“questionfrag.isCorrect()”行允许我遍历片段并获取是否从每个片段获得了正确的答案。在viewpager的最后一个片段上调用correctAnswers函数。但是,当我调用该方法时,片段中的所有变量都为空。我认为片段状态是通过设置“viewPager.OffscreenPageLimit”来包含所有片段而固有地保存的,但它们不是。

有谁知道解决方案?

1 个答案:

答案 0 :(得分:0)

我通过在SharedPrefereces中保存变量解决了这个问题。将来我可以使用SQLite保存它们。无论如何,分配内存以保存100个片段状态可能不是最佳选择。