Activity 점프 매개 변수 콜백

1167 단어
1. A-Activity 우선 데이터를 가지고 B-Activity 점프
Intent intent = new Intent();
intent.setClass(getActivity(), MedicineActivity.class);
intent.putExtra("medicineList", (Serializable) medicineList);
intent.putExtra("code", 101);
startActivityForResult(intent, 101);

2. A-Activity의 데이터를 수신하고 처리된 데이터setResult에 코드를 가지고 있어서 구별하기 위한 것입니다.
Intent intent = getIntent();
medicineList = (List) intent.getSerializableExtra("medicineList");
code = intent.getIntExtra("code", 0);
Intent intent = new Intent().putExtra("name", name);
setResult(code, intent);

3. 마지막으로 되돌아오는 데이터를 처리해야 하는 인터페이스에서 다시 써서 데이터를 얻는다
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == 100){
        String name = data.getStringExtra("name");
        temporaryDoctorAdviceFragment.setMedicine(name);
    }
    if (resultCode == 101){
        String name = data.getStringExtra("name");
        longTimeDoctorAdviceFragment.setMedicine(name);
    }
}

코드가 간단한데 이해하기 어려운 게 있으면 같이 연구해~

좋은 웹페이지 즐겨찾기