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 중의 일부이다. 
  • Bundle
    • 데이터를 넘기는 방식
    • Pair이다.
    • JSONObject를 넘기기는 까다롭다.
    • 전달할 값 생성 : val bundle = bundleOf("키 이름" to 값)
    • 목적지 + 값 전달 : findNavController().navigate(목적지, bundle)