본문 바로가기

Java and Android/Android Kotlin

Android Kotlin - 실습예제 최종

1. 네비게이션 기본 설정

 

  (1) - 먼저 우리가 이전에 작성한 각 fragment.xml들의 tools:context=".해당xml을 만든 kt파일이름"을 지정해준다

 

 

  (2) - 그러면 nav_graph.xml에 가보면 우리가 만든 xml의 디자인이 그림으로 나오고 그걸 클릭하면 화면에 띄워진다

 (3) - mainFragment 그림을 상단의 홈그림버튼을 눌러 홈으로 지정해주고 각 그림마다 좌측 중앙 원을 드래그 하여

       순서를 연결해준다

     - 그러면 순서에 맞게 동작하는 <action>태그가 코드상에 생기게 된다

 

 

*tip) values폴더의 style.xml에서 parent중 아래 예제부분을 NoActionBar로 설정해야 핸드폰으로 빌드했을때 상단텍스트바가 사라짐

 

 

 

2. 네비게이션 로직 작성

 

  (1) - MainFragment에서 QuestionFragment로 이동하도록 네비게이션 작동

       *버튼 한개에 한개의 온클릭이벤트를 걸때는 setOnclickListener{}람다식을 쓰는게 좋다

 

 (2) -  QuestionFragment에서 SelectionFragment로 이동하도록 네비게이션 작동

    *버튼안에 버튼이 여러개 존재한다면 온클릭이벤트를 걸때  상단에 View.onClickListener 인터페이스를 상속하도록 선언해주고 대상이 되는 버튼에 setOnclickListener(this)를 걸어주면 this에 View.onClickListener가 들어가는데

상속받은 인터페이스속 onClick()함수도 함께 오버라이딩 해준다 이때 버튼이 무엇이냐에 따라 다른 실행구문을

실행하도록 onClick()함수의 내용을 바꿀 수 있어 활용도가 높다

 

 

 

(3)-  SelectionFragment에서 보여지는 fragment_selection의 4개의 값중 하나를 선택했을때 해당 데이터를  ResultFragment로 이동하도록 네비게이션 작동 혹은 뒤로가기 버튼을 눌렀을때 (2)로 가도록 작동

 

 

 

 

(4) -  fragment_result.xml로 결과 디자인을 보여주고 홈버튼을 눌렀을때

       ResultFragment에서 MainFragment로 이동하도록 네비게이션 작동

 

 

 

 

 

3.각 화면전환마다 애니메이션 넣어주기

 (1) - nav_graph.xml의 디자인화면에서 화살표를 클릭하고 우측 Animations에 enterAnim부터 popExitAnim를 아래와 같이 설정해준다

     - 그러면 코드상에도 설정이 추가되는데 같은 코드를 다른 Action태그에도 붙여넣어 같은 효과를 준다