Я пытаюсь заставить тихое простое занятие работать.моя деятельность включает в себя две кнопки, и я пытаюсь заставить одну из них работать как простая кнопка возврата (вернуться к предыдущему занятию), любая помощь?
вот мой код:
public void valider(View v)
{
c.setNomPrenom(et1.getText().toString());
c.setmPortable(et2.getText().toString());
c.setmFixe(et3.getText().toString());
i.putExtra(ContactActivity.TAG_AJOUT_EDIT, c);
setResult(RESULT_OK,i);
finish();
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
public void retour(View v)
{
onBackPressed();
}
Вот что показывает LogCat:
02-21 20:03:46.286: W/dalvikvm(1221): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
02-21 20:03:46.336: E/AndroidRuntime(1221): FATAL EXCEPTION: main
02-21 20:03:46.336: E/AndroidRuntime(1221): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=0, data=null} to activity {hd.android.contact/hd.android.contact.ContactActivity}: java.lang.NullPointerException
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread.deliverResults(ActivityThread.java:2980)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3023)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread.access$1100(ActivityThread.java:123)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1177)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.os.Handler.dispatchMessage(Handler.java:99)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.os.Looper.loop(Looper.java:137)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread.main(ActivityThread.java:4424)
02-21 20:03:46.336: E/AndroidRuntime(1221): at java.lang.reflect.Method.invokeNative(Native Method)
02-21 20:03:46.336: E/AndroidRuntime(1221): at java.lang.reflect.Method.invoke(Method.java:511)
02-21 20:03:46.336: E/AndroidRuntime(1221): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
02-21 20:03:46.336: E/AndroidRuntime(1221): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
02-21 20:03:46.336: E/AndroidRuntime(1221): at dalvik.system.NativeStart.main(Native Method)
02-21 20:03:46.336: E/AndroidRuntime(1221): Caused by: java.lang.NullPointerException
02-21 20:03:46.336: E/AndroidRuntime(1221): at hd.android.contact.ContactActivity.onActivityResult(ContactActivity.java:132)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.Activity.dispatchActivityResult(Activity.java:4649)
02-21 20:03:46.336: E/AndroidRuntime(1221): at android.app.ActivityThread.deliverResults(ActivityThread.java:2976)
Заранее спасибо.
Редактировать:
Я тоже пробовал это, но это не помогло:
EditText et1,et2,et3;
Contact c;
Intent i=new Intent();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.contact_edit);
c=(Contact) getIntent().getSerializableExtra("afficher");
et1=(EditText) this.findViewById(R.id.editText4);
String str1=c.getNomPrenom();
et2=(EditText) this.findViewById(R.id.editText5);
String str2=c.getmPortable();
et3=(EditText) this.findViewById(R.id.editText6);
String str3=c.getmFixe();
et1.setText(str1);
et2.setText(str2);
et3.setText(str3);
Button btn_retour=(Button) findViewById(R.id.button5);
btn_retour.setOnClickListener(retour);
Button btn_valider=(Button) findViewById(R.id.button6);
btn_valider.setOnClickListener(valider);
}
private OnClickListener valider= new OnClickListener() {
public void onClick(View v) {
c.setNomPrenom(et1.getText().toString());
c.setmPortable(et2.getText().toString());
c.setmFixe(et3.getText().toString());
i.putExtra(ContactActivity.TAG_AJOUT_EDIT, c);
setResult(RESULT_OK,i);
finish();
}
};
private OnClickListener retour= new OnClickListener() {
public void onClick(View v) {
finish();
}
};