Java Android希望在活动之间传递对象
嗨,我试图在活动之间传递一个对象,但看起来意图没有找到活动 有一个obect类: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
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>