두 개체 사이에 개체 배열을 전달해야하는 두 가지 작업이 있습니다. 주요 활동에서 보조 활동을 startActivityForResult()
으로 시작하고 배열을 ParcelableArray로 번들로 전달합니다. 배열을 보조 활동으로 가져 오면 정상적으로 작동합니다. 배열을 배열에서 꺼내서 거기에서 조작 할 수 있습니다.Android 활동 결과
내가 아는 문제는 배열을 호출 활동으로 다시 전달하려는 경우입니다. 사용자가 장치의 뒤로/돌아 가기 단추를 누를 때 발생해야합니다. 배열을 보조 도구에서 onPause()
내에서 setResult()
을 호출하여 배열에 다시 넣으려고했지만이 작업을 수행하기에 잘못된 위치라고 가정합니다. 그 결론에 도달했습니다 getCallingActivity()
이내 onPause()
null을 반환합니다.
이 상황에서 전화 활동으로 번들을 반환하는 적절한 방법은 무엇입니까?
주요 활동 :
Bundle b = new Bundle();
b.putParcelableArray("com.whatever.data", items);
Intent folderView = new Intent(MainView.this, FolderView.class);
folderView.putExtras(b);
startActivityForResult(folderView, 1);
차 활동 :
protected void onPause() {
super.onPause();
Intent result = new Intent();
Bundle b = new Bundle();
b.putParcelableArray("com.whatever.data", items);
result.putExtras(b);
setResult(Activity.RESULT_OK, result);
}
...라고 보장 할 수 없습니다 마무리() 방법이다. 감사! – harrywynn