最近挨個知識點寫Demo,遇到Activity間傳數據時,照着代碼敲完不理解這個方法。仔細讀了讀,體會寫下。
Activity01
//切換到CrimeActivity
Intent i=new Intent(getActivity(),CrimePagerActivity.class);
//附帶信息,顯示相應item的詳情頁
i.putExtra(CrimeFragment.EXTRA_CRIME_ID,crime.getmID());
startActivity(i);
Activity02
final UUID crimeID= (UUID) getIntent().getSerializableExtra(CrimeFragment.EXTRA_CRIME_ID);
以前我傳的都是String,直接getStringExtra就行。於是試了試
final UUID crimeID= (UUID)getIntent().getStringExtra(CrimeFragment.EXTRA_CRIME_ID);
報錯!
後來看明白,SerializableExtra實現的接口可以傳對象,而不僅僅是簡單的基本數據類型和String。
又找到另一篇博客,也可以看看
http://blog.sina.com.cn/s/blog_632b619d01011ga9.html
至於他文章裏提到的Parcelable,我個人暫時還沒有實際應用到,稍後再學。