해당 방법은 implementation "androidx.fragment:fragment:1.3.0" 이후 Deprecated 되었습니다.
Map 형태로 인텐트 받기
방법1
HashMap<String, String> hashMap= adapter.getItem(position);
Intent intent = new Intent(SourceActivity.this, DestinationActivity.class);
intent.putExtra("hashMap", hashMap);
startActivity(intent);
Receiver Activity:
Intent intent = getIntent();
HashMap<String, String> hashMap = (HashMap<String, String>) intent.getSerializableExtra("hashMap");
///////////////////////////////////////////////////////////////////////////////////////////////////////////
방법2
Bundle bundle = new Bundle(); for (Map.Entry<String, String> entry : getData().entrySet()) { bundle.putString(entry.getKey(), entry.getValue()); }
코틀린 :
val bundle = Bundle() for (entry in data.entries) bundle.putString(entry.key, entry.value)
///////////////////////////////////////////////////////////////////////////////////////////////////////////
1. 받는 쪽
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val setLocation_Latitude = arguments?.getDouble("latitude")?:0.0
val setLocation_Longitude = arguments?.getDouble("longitude")?:0.0
2. 주는 쪽
val fragmentbundle = Bundle()
fragmentbundle.putDouble("latitude", it.latitude)
fragmentbundle.putDouble("longitude", it.longitude)
val dialog_confirming: DialogFragment = withme_m2_dialog_setposition()
dialog_confirming.arguments = fragmentbundle
dialog_confirming.show(activity?.supportFragmentManager!!, "m2_dialog_setposition")
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
보강된 방법 response 방법(프래그먼트 to 프래그먼트)
1. 보내는쪽. (setTargetFragment 호출)
Result 받는 함수 오버라이딩
2. 받고 응답하는쪽
아래와 같은 함수 호출
첫번째 targetRequestCode는 리퀘스트 코드, FromFragmentMaptoSetpoint는 Resultcode
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Fragment1 -> Fragment2 -> Fragment 3
2단 깊이 전달후 데이터 처리방법
2에서
위와 같이 선언하고
부모프레그먼트로 위를 선언한다
그뒤 2<->3 통신해서 받아오는 리졀트로 부모 뷰를 컨트롤하면된다
'Android Dev' 카테고리의 다른 글
Firebase's Timestamp/Fieldvalue/Date/String 관련 변환(2023.12.18 추가) (0) | 2020.01.28 |
---|---|
app:dataBindingGenBaseClassesDebug (0) | 2020.01.27 |
glide에 firestore reference로 이미지 load하기. (0) | 2019.12.30 |
Fused location Provider 정리. (0) | 2019.12.16 |
Rxjava Observable/BehaviorSubject 에 대한 고찰 (0) | 2019.12.07 |