응용 프로그램을 실행하는 동안 메모리 문제로 인해 활동이 종료됩니다.응용 프로그램이 백그라운드에서 종료 될 때 onActivityResult()가 발생했습니다.
내 활동에서 startActivityForResult() 메소드를 호출하여 카메라를 시작합니다. 호출하는 동작이 백그라운드에서 종료 될 때 비정상적인 동작을 보여줍니다. 인 텐트는 onRestoreInstance()를 입력 한 후 결과로 onActivityResult()로 반환되는 경우가 있습니다. 그러나 어떤 경우에는 onRestoreInstance()를 입력 한 후 onActivityResult()를 입력하지 않습니다.
이 문제가 발생하는 이유를 설명해주십시오.
Intent i = new Intent(this, DatabaseEditor.class);
//You may pass value on another activity
i.putExtra("xCoordinate", String.valueOf(o));
i.putExtra("yCoordinate", String.valueOf(p));
i.putExtra("scale", scaleTest);
startActivity(i);
다음이 코드
Bundle b = getIntent().getExtras();
if (b != null) {
editTextX.setText(String.valueOf(b.getString("xCoordinate")));
editTextY.setText(String.valueOf(b.getString("yCoordinate")));
editTextScale.setText(Float.toString(b.getFloat("scale")));
}
를 사용하여 전달 된 값을 얻을 수있는 새로운 활동에
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
// Write your code on result ok return
}
if (resultCode == RESULT_CANCELED) {
// Write your code on no result return
}
}
}
을 onActivityResult를 오버라이드 (override)
인쇄 스택 추적을 사용하면 다른 사람이 정확한 문제점을 이해할 수 있습니다. – Maulik