2013-03-27 2 views
0

Я хочу передать parcelable массив, содержащий 2 объекта между Активностипередать ArrayList из parcelable

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 в другой деятельности

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, когда он пытается прочитать второй объект моего списка (первый отображается)

Я не понимаю, почему это говорит о булевом, потому что у меня нет никакого bool ЕАН в моем объекте

Большое спасибо

+0

вы пытались заставить оператора печати к типу строки с помощью метода ToString()? – Bob

+0

@Bob Dunakey. Спасибо за ваш ответ. Я попробовал ваше решение, но у меня такая же ошибка. Я не знаю, откуда происходит логическое значение: – user2177823

+0

Что такое getIntent()? – Bob

ответ

0

Я не знаю, как исправить проблему, но Ive использовал serializables, чтобы передать мои сложные статистов. Вы можете попробовать это, а не просто.

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

в

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

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

+0

для этого 'Language' необходимо реализовать' Serializable'. Плохое решение. – SudoRahul

+0

@ r2DoesInc Я уже пробовал ваше решение, но снова появляется такая же ошибка. большое спасибо – user2177823

Смежные вопросы