Kotlin
5. 화면 이동의 기초
킨글
2024. 4. 11. 22:21
- 클래스 구성
- 화면 이동을 위한 클릭 이벤트 생성
- RecyclerView의 어댑터에 클릭 인터페이스 구현체 전달
- 클릭 이벤트시 해당 항목의 정보(JSONObject)를 상세화면으로 전달
- 메인화면(FirstFragment)에서 데이터 넘기기
- bundleOf 방식을 통해 두번째 fragment(상세화면)로 값 전달
- 상세화면(SecondFragment)에서 데이터 받기
- arguments를 통해 값 수신
- 수신한 데이터를 바인딩된 컴포넌트들(이미지, 좋아요) 표시
- 화면 이동을 위한 클릭 이벤트 생성
- constraintLayout 제약조건
- 시작점부터 종료점까지 선언한다.
- 가장 큰 장점은 속도이다.
- depth가 깊어질수록 느려진다. 근데 1depth에서 대부분 끝난다.
- 모든 단말기의 화면 디바이스의 대응한다.
- 사용방법
- app:layout_constraintStart_toStartOf="대상 컴포넌트 id 또는 parent"
- dp(Density-independent Pixel)
- 디스플레이의 해상도(밀도)와 상관없이 다룰 수 있는 단위로 안드로이드에서 사용하는 기본적인 단위
- Activity와 Context는 한 끗 차이이다.
- Context
- 핸드폰에 있는 많은 기능들에 접근할 수 있는 매개체 역할을 함.
- 여기서 activity는 하나의 수단이다.
- Activity
- class를 뜻하는 activity이다. 즉, context 중의 일부이다.
- Context
- Bundle
- 데이터를 넘기는 방식
- Pair이다.
- JSONObject를 넘기기는 까다롭다.
- 전달할 값 생성 : val bundle = bundleOf("키 이름" to 값)
- 목적지 + 값 전달 : findNavController().navigate(목적지, bundle)