Java Android希望在活动之间传递对象

Java Android希望在活动之间传递对象,java,android,object,android-intent,Java,Android,Object,Android Intent,嗨,我试图在活动之间传递一个对象,但看起来意图没有找到活动 有一个obect类: public class Contacte implements Serializable { private String nom; private String cognoms; private String telefon; private int horari; // 0 = horari sense definir; 1 = 24h; 2 = Mati; 3 = Tarda /** * Constr

嗨,我试图在活动之间传递一个对象,但看起来意图没有找到活动

有一个obect类:

public class Contacte implements Serializable {

private String nom;
private String cognoms;
private String telefon;
private int horari; // 0 = horari sense definir; 1 = 24h; 2 = Mati; 3 = Tarda

/**
 * Constructor sense parametres que permet crear un objecte contacte amb els
 * valors predefinits
 */
public Contacte(){
    nom = "Nom";
    cognoms = "Cognom";
    telefon = "Telefon";
    horari = 0;
}

/** Gettes and Setters **/
主要活动:

// I use this cause I need to order the objects by priority
ArrayList<Contacte> contactes = new ArrayList<Contacte>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    // Create Contactes and add to the ArrayList
    Contacte c1 = new Contacte();
    Contacte c2 = new Contacte();
    Contacte c3 = new Contacte();

    c1.setNom("John");
    c1.setCognoms("Doe");
    c1.setTelefon("632145897"); 

    contactes.add(c1);
    contactes.add(c2);
    contactes.add(c3);


 // This is because I have 6 different buttons
    Button edita1 = (Button)findViewById(R.id.edita1);
    edita1.setOnClickListener(onClickListener);


}


private OnClickListener onClickListener = new OnClickListener() {
    @Override
    public void onClick(final View v) {
        switch(v.getId()){
            case R.id.edita1:

                // 1. create an intent pass class name or intnet action name
                Intent i = new Intent("com.ioc.eac1.EditaContacte");

                // 2. create person object
                Contacte c = new Contacte();
                c = contactes.get(0);

                // 3. put person in intent data
                i.putExtra("contacte", c);

                // 4. start the activity
                startActivity(i);
            break;
            case R.id.edita2:
                 //DO something
            break;
            case R.id.edita3:
                 //DO something
            break;
        }

  }
还有Manifest.xml

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".EditaContacte"
        android:label="@string/title_activity_edita_contacte" >
    </activity>


</application>

我正在试着调试它,但看起来它没有找到活动。但是它所包含的活动是在清单上声明的。我试图在一个活动中发送和创建的对象,当按钮处于单击状态时,显示其他活动的对象属性

只需使用Intent.SetClass(MainActivity.this,editaContact.class)

如果两个活动在同一个应用程序中,则无需使用操作,只需设置类即可

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".EditaContacte"
        android:label="@string/title_activity_edita_contacte" >
    </activity>


</application>