在我的应用中,我有这一行:
Item item = (Item)getIntent().getSerializableExtra(ITEM_TRANSFER);
我得到的错误是:引起:java.lang.ClassCastException:java.lang.Long无法强制转换为com.example.shop.Item
Item Class实现Serializable,所以我不知道问题是什么。
@Override
public void onItemClick(View view, int position){
Intent intent = new Intent(this, ItemDetailActivity.class);
intent.putExtra(ITEM_TRANSFER, mRecyclerViewAdapter.getItemId(position) );
startActivity(intent);
}
这就是我使用Extra的方式
答案 0 :(得分:1)
发送Item
值,而不是传递getItemId()
@Override
public void onItemClick(View view, int position){
Intent intent = new Intent(this, ItemDetailActivity.class);
intent.putExtra(ITEM_TRANSFER, item);
startActivity(intent);
}
接收
Item item = (Item)getIntent().getSerializableExtra(ITEM_TRANSFER);