对不起标题,
我想通过意图传递一个自写类的数组。 这就是Sender Code的样子:
private void publishResults(int result, DienstplanDatenreihe[] row, String action)
{
Intent intent = new Intent(NOTIFICATION);
intent.putExtra(WorkingCode.TABLE, row);
intent.putExtra(WorkingCode.RESULT, result);
intent.putExtra(ACTION,action);
sendBroadcast(intent);
}
这是接收器代码的样子:
Bundle extras = intent.getExtras();
DienstplanDatenreihe[] row = (DienstplanDatenreihe[]) extras.getSerializable(WorkingCode.TABLE);
以下是例外:
Caused by: java.lang.ClassCastException: java.lang.Object[] cannot be cast to HelperCode.DienstplanDatenreihe[]
我不知道为什么......互联网上的其他任何人都这样做。 [注意:我的DienstplanDatenreihe仅包含字符串和字符串[]]
答案 0 :(得分:1)
DienstplanDatenreihe
可能是一个未实现Parcelable
的自定义类,因此Android默认情况下无法通过Intent
传递它。您必须使您的类实现Parcelable
接口。