startActivity() vs startActivityForResult() 도식도를 통한 차이 확인 - 응답 처리가 필요치 않은 경우 (단방향 액티비티), 응답 처리가 필요한 경우 (양방향 액티비티)

CODEDRAGON Development/Android

반응형



 

 

 

startActivity() vs startActivityForResult() 도식도를 통한 차이 확인

·         응답 처리가 필요치 않은 경우 (단방향 액티비티)

·         응답 처리가 필요한 경우 (양방향 액티비티)

 

 

 

 

 

응답 처리가 필요치 않은 경우 (단방향 액티비티)

인텐트에 데이터를 실어서 넘긴 , 세컨드 액티비티에서 받은 데이터를 처리하는 방식입니다.


 

 


 

 

 

 

 

 

 

 

 

응답 처리가 필요한 경우 (양방향 액티비티)

·         메인 액티비티에서 세컨드 액티비티로 데이터를 넘긴 세컨드 액티비티에서 메인 액티비티로 데이터를 돌려 주는 경우 사용합니다.

·         메인 액티비티에서 putExtra() 인텐트에 데이터를 넣는 것은 동일하지만, 세컨드 액티비티에서 데이터를 다시 돌려 받으려면 액티비티를 호출할 startActivityforResult()메서드를 사용해야 합니다.

·         세컨드 액티비티에서 finish() 끝내기 전에 메인 액티비티에 돌려줄 인텐트를 생성해서 putExtra() 데이터를 넣은 후에 setResult() 돌려줍니다.

·         메인 액티비티에서는 onActivityResult()메서드를 오버라이드하고 안에 getExtra() 돌려 받은 데이터를 사용합니다.

 

 

 

 

o Second Activity 데이터를 받아오기만 하는 경우


 

 

 

 

 

 

 

o Main Activity에서 Second Activity 데이터를 주고 받는 경우


 



'Development > Android' 카테고리의 다른 글

Error-java.lang.IllegalArgumentException: Unable to locate adb, 해결방법  (0) 2019.03.14
Cursor(커서)  (0) 2019.03.14
Activity 실행 과정  (0) 2019.03.13
새 액티비티 생성하기  (0) 2019.03.13
인텐트 생성 방법  (0) 2019.03.13