
val intent = Intent(this, SubActivity::class.java)
        intent.putExtra("key1","문자열 전달쓰")
        intent.putExtra("key2",2021)
val value1 = intent.getStringExtra("key1")
// 아무런 값이 전달되지 않았을 때 디폴트 값 0 설정
val value2 = intent.getIntExtra("key2",0)
🤔 intent가 액티비티 기본 속성이기 때문에 전달된 인텐트는 바로 호출해서 사용 가능
1) 서브 액비비티가 종료시 호출 액티비티로 값 돌려주기
override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_sub)
        
       // 결과 돌려줄 인텐트 생성 후 저장
       val returnIntent = Intent()
       // 값 담기
       returnIntent.putExtra("returnValue",123)
       // 값 전달
       // setResult() 첫번째 파라미터 - 상태값, 두번째 파라미터 - 전달하려는 인텐트
       setResult(Activity.RESULT_OK,returnIntent)
       // 최종 전달
       finish()
       startActivity(intent) // 단순 데이터 전달 시
       
}
2) 메인 액티비티에서 값 돌려받기
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
	// 돌려받은 resultCode가 정상인지 체크
        if(resultCode == Activity.RESULT_OK){
            val message = data?.getStringExtra("returnValue")
            Toast.makeText(this, message,Toast.LENGTH_SHORT).show()
        }
    }
🤔 OnActivityResult() 메서드 구조
- requestCode : 요청 시에 메인 액티비티에서 입력하는 코드 startActivityForResult 메서드에 인텐트와 함께 입력해서 호출한 코드
 - resultCode: 결과 처리 후 서브 액티비티에서 입력하는 코드(RESULT_OK/RESULT_CANCELED)
 - data : 결과 처리 후 액티비티가 넘겨주는 인텐트
 
  btn1.setOnClickListener {
            startActivityForResult(intent,100)
        }
if(resultCode == Activity.RESULT_OK){
            when(requestCode){
                100 -> {
                    val message = data?.getStringExtra("returnValue")
                }
            }
        }