본문 바로가기
개발자 도전기

[안드로이드] Adapter에서 Activity finish() 사용 방법

by 개발하는아빠 2022. 10. 4.

Adapter에서 finish()를 써야했던 상황

[모임 정보 수정] 액티비티에서 세부 항목 [관심분야] 또는 [지역]을 선택하기 위해서는 다른 액티비티로 이동해야 함.

해당 정보를 선택한 후에는 [모임 정보 수정] 액티비티로 돌아와서 변경된 정보를 저장해야 함.

 

 

sharedPreference를 사용하는 방법 선택

[관심분야] 또는 [지역] 액티비티에서 선택한 값을 sharedPreference에 저장해서,

[모임 정보 수정] 화면으로 돌아오면 onResume에서 sharedPreference에 저장된 값을 꺼냄.

[관심분야] 선택의 경우는 activity를 finish해서 돌아오기 때문에 문제가 없었으나, [지역]의 경우는 startActivity(intent)를 사용했기 때문에 문제 발생. 이전에 액티비티를 없애버리고 돌아오자니 안됨.

그래서 finish를 똑같이 써야겠다고 생각했는데, 방법을 몰라서 헤맴.

 

((Activity)context).finish();

 

어댑터에서 액티비티를 사용해서 finish() 함수를 사용하여 해결.

 

| 참고 자료

Adapter에서 Activity finish()하기

https://db-log.tistory.com/entry/Adapter%EC%97%90%EC%84%9C-Activity-finish%ED%95%98%EA%B8%B0

 

Adapter에서 Activity finish()하기

RecyclerView에서 리스트를 선택했을때, 해당 Activity를 종료하고, 새로운 Activity를 불러오거나 이전 Activity로 돌아가야하는 경우가 있다. Activity로부터 context를 받은게 있다면, ((Activity)mContext).f..

db-log.tistory.com