0
我正在使用startActivityForResult()[在MainActivity類中]調用另一個名爲「EditActivity」的活動&將一些已編輯的值返回到MainActivity。 EditActivity有一個按鈕,當按下時應該將用戶返回到MainActivity。但相反,該應用程序正在關閉按鈕。 內MainActivity:單擊按鈕而不是返回主活動後,應用程序關閉
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, EditActivity.class);
intent.putExtra("edit_data", arrayList.get(position).toString());
intent.putExtra("edit_position", position);
startActivityForResult(intent, IntentValuesClass.REQUEST_CODE);
}
});
內EditActivity:
saveButton.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent data=new Intent();
data.putExtra("edited_text",editInput);
data.putExtra("position",pos);
setResult(EditActivity.RESULT_OK,data);
Log.w(IntentValuesClass.Msg,"Button SAVE Clicked");
finish();
Log.w(IntentValuesClass.Msg,"finished");
}
}
);
再次在返回MainActivity:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
Log.w(IntentValuesClass.Msg,"Inside onActivityResult");
int position;
if (requestCode == IntentValuesClass.REQUEST_CODE) {
if (resultCode==EditActivity.RESULT_OK) {
Log.w(IntentValuesClass.Msg,"Result ok");
String s = data.getStringExtra("edited_text");
position = data.getIntExtra("position",-1);
arrayList.remove(position);
arrayList.add(position, s);
adapter.notifyDataSetChanged();
}
}
}
後錯誤日誌這裏 – akhilesh0707
並放置在單擊的項目方法中設置斷點,並通過張貼任何偏離你的期望 – efekctive
您的應用程序步驟可能崩潰,檢查這篇文章https://stackoverflow.com/questions/23353173 /不幸-myapp-has-stopped-how-can-i-solve-this/23353174#23353174並在你的問題中包含stacktrace。 –