Android中Intent在Activity之间传递对象[Serializable或Parcelable]
Posted TaoLee-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中Intent在Activity之间传递对象[Serializable或Parcelable]相关的知识,希望对你有一定的参考价值。
使用intent启动activity
/**
* Serializeable传递对象的方法
*/
private void SerializeMethod(){
Person mPerson = new Person();
mPerson.setName("andy");
mPerson.setAge(26);
Intent mIntent = new Intent(this,SerializableDemo.class);
Bundle mBundle = new Bundle();
mBundle.putSerializable(SER_KEY,mPerson);
mIntent.putExtras(mBundle);
startActivity(mIntent);
}
/**
* Pacelable传递对象方法
*/
private void PacelableMethod(){
Police mPolice = new Police();
mPolice.setName("I am Police");
mPolice.setWorkTime(2008);
Intent mIntent = new Intent(this,ParcelableDemo.class);
Bundle mBundle = new Bundle();
mBundle.putParcelable(PAR_KEY, mPolice);
mIntent.putExtras(mBundle);
startActivity(mIntent);
}
接收
public class SerializableDemo extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView mTextView = new TextView(this);
Person mPerson = (Person)getIntent().getSerializableExtra(TestActivity.SER_KEY);
mTextView.setText("You name is: " + mPerson.getName() + "/n"+
"You age is: " + mPerson.getAge());
setContentView(mTextView);
}
}
public class ParcelableDemo extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView mTextView = new TextView(this);
Police mPolice = (Police)getIntent().getParcelableExtra(TestActivity.PAR_KEY);
mTextView.setText("Police name is: " + mPolice.getName()+"/n"+
"WorkTime is: " + mPolice.getWorkTime() + "/n");
setContentView(mTextView);
}
}
以上是关于Android中Intent在Activity之间传递对象[Serializable或Parcelable]的主要内容,如果未能解决你的问题,请参考以下文章
从0系统学Android-2.3使用 Intent 在 Activity 之间穿梭
Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]