0

アクティビティ間で 2 つのオブジェクトを含むパーセル可能な配列を渡したい

Intent i = new Intent();
        i.setClass(act, ChoiceLanguage.class);      
        for(Language l:langueControl.getListeLangues())
        {
            System.out.println("Contents" + l.getTuto_p1()); // no problem here , my objects are stored and i can read them
        }
        i.putParcelableArrayListExtra("listeLangues", langueControl.getListeLangues());
        act.startActivity(i);

しかし、別のアクティビティで配列リストを読み込もうとすると

ArrayList<Language> listeLangues= getIntent().getParcelableArrayListExtra("listeLangues");  

                for(Language l:listeLangues)
                {
                    System.out.println("Contents" + l.getTuto_p1());// error here
                }

次のエラーが発生しました:03-27 16:26:46.842: E/AndroidRuntime(12495): java.lang.ClassCastException: java.lang.Boolean cannot be cast to com.dev.pojo.Languageリストの2番目のオブジェクトを読み取ろうとすると(最初のオブジェクトが表示されます)

オブジェクトにブール値がないため、ブール値について話している理由がわかりません

どうもありがとうございました

4

1 に答える 1

0

問題を解決する方法はわかりませんが、シリアル化可能を使用して複雑なエクストラを渡しました。小包の代わりにそれを試す方法があります。

    i.putParcelableArrayListExtra("listeLangues", langueControl.getListeLangues());

    i.putExtra("listeLangues", langueControl.getListeLangues());

http://developer.android.com/reference/android/content/Intent.html#putExtra

于 2013-03-27T15:42:44.993 に答える