도전과제 15고객 정보 입력 화면을 만들고 이 화면이 보이거나 사라질 때 애니메이션이 동작하도록 해보세요.
참고할 점 풀이레이아웃은 간단하게 main화면과, 버튼을 누르면 나올 고객정보 입력 창을 만들었다.
오른쪽으로 화면이 이동하는 move_right와 왼쪽으로 화면이 이동하는 move_left, 그리고
안움직이는 not_move이다.
결과전체 소스 코드 : https://github.com/howtolivelikehuman/DoitAndroid/tree/master/DoitMission_15 howtolivelikehuman/DoitAndroid Do it Android programing (JAVA). Contribute to howtolivelikehuman/DoitAndroid development by creating an account on GitHub. github.com 도전과제 07,08앱에서 사용될 수 있는 여러 화면을 구성하고 각 화면을 전환하면서 토스트로 메시지를 띄워주도록 만들어 보세요.
참고할점 풀이우선 로그인 화면인 activity_main, 버튼 3개가 있는 activity_menu, 메뉴에서 갈 수 있는 activity_customer, activity_sales, acitivity_product 세 화면을 만든다. 이때 로그인 화면에서 아이디, 비밀번호 입력창은 maxLine = 1로 정의해서 한 줄만 입력되게 한다.
메인 액티비티에서 로그인 버튼을 누르면 checkID()로 ID, PASSWORD를 다 쳤는지 확인하고, 메뉴 액티비티로 코드를 넘기며넘어간다. 이때 인텐트에 ID, PW 데이터가 담겨있다.
메뉴 액티비티에서의 버튼 3개는 각각의 액티비티로 전환되게 연결해놓았고, 메인에서 온 데이터 (ID,PW)값을 그대로 전달한다. 이때 각 화면 전환별로 토스트 메세지는 onActivityResult()함수로 resultcode에 따라 출력하게 만들었다. 각각의 토스트 메세지를 인텐트에 넣어서 전달해도 되지만, onActivityResult 함수를 사용해보고 싶어서 이런 방식으로 했다. 이때 액티비티 진행 방식은 다음과 같다. 따라서 각각의 액티비티 실행 이후 메뉴, 메인으로 돌아갈때 setResult함수로 돌아갈 코드값을 넣고 종료한다.
만약 메인으로 돌아간다면, 중간에 메뉴를 거쳤다가 가는데 그 이유는 최초에 startActivityForResult()로 메인 -> 메뉴였기 때문에 메뉴가 종료해야지만 onActivityResult()함수가 발동하기 때문이다. 따라서 이때 메뉴는 코드값을 그대로 set해주고 종료하는 역할만 한다. 결과 |