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]

android两个activity之间传值

Android Activity之间的跳转

Android 中使用intent.putExtra实现Activity之间的参数传递

在Android中的Activity之间持久化Intent发送的数据