두 개의 액티비티가있는 첫 번째 세부 액티비티와 두 번째 액티비티 페이지는 confirmationPage입니다. 첫 번째 페이지로 돌아 가면이 시나리오를 어떻게 처리해야합니까?액티비티간에 콜백 메커니즘을 구현하는 방법
조각을 사용하는 대신 활동간에 가능합니까? startActivityForResult(intent, requestCode)
에 의한 결과에 대한
두 개의 액티비티가있는 첫 번째 세부 액티비티와 두 번째 액티비티 페이지는 confirmationPage입니다. 첫 번째 페이지로 돌아 가면이 시나리오를 어떻게 처리해야합니까?액티비티간에 콜백 메커니즘을 구현하는 방법
조각을 사용하는 대신 활동간에 가능합니까? startActivityForResult(intent, requestCode)
에 의한 결과에 대한
당신이에 startActivityForResult()를 사용할 필요를 다시 보내려면; 메서드를 호출합니다.
그리고 onActivityResult() 메소드도 구현해야합니다. 여기
두 번째 활동에서@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == 1) {
Bundle extra = data.getExtras();
String ID = extra.getString("NameKey").trim();
// do your code here.
}
}
코드 ..
이 확인 클릭 버튼에 코드를 추가 .. 첫번째 활동에 대한 코드입니다.
Intent i = new Intent();
Bundle extra = new Bundle();
extra.putString("NameKey", KeyValue);
i.putExtras(extra);
setResult(1, i);
finish();
시작 confirmationPage, 여기
완전한 예 (http://www.vogella.com/articles/AndroidIntent/#usingintents_sub)
내가 (마무리를 호출 믿고) 것은 활동의 철회 할 수있는 가장 쉬운 방법입니다. 뒤로 버튼을 누르는 것과 비슷한 이전의 것으로 돌아 가야합니다.
편집 : Sirlate가 언급했듯이 startActivityForResult가 데이터를 반환하려는 경우 가장 좋은 방법 일 수 있습니다.
이 5 월 당신에게
도움이 하나입니다 FirstActivity
Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);
예 : 그리고 secondActivity는 데이터
Intent returnIntent = new Intent();
returnIntent.putExtra("result",result);
setResult(RESULT_OK,returnIntent);
finish();
'startActivityForResult();'를 사용하여 자녀의 'Activity' 응답을 부모에게 보냅니다. – hardartcore