교재 245 쪽 직접 풀 어 보 기 6 - 1 Relative 부분 을 Linear 로 수정 해 주 며 쓸 데 없 는 부분 을 지운다 . 그리고 추가 로 orientation 을 추가 해 vertical ( 수직 정렬 ) 을 지정 해 준다 . LinearLayout 을 추가 로 만들 어서 이 태그 안 에 chronometer 기능 을 추가 한다 . chronometer 는 상단 에 ' 예약 에 걸린 시간 ' 을 표시 할 것 이 다 . 그리고 radiobutton 을 만들 어 주 기 위해 LinearLayout 을 닫 고 RadioGroup 을 만들 어 준다 . radiobutton 은 ' 시간 설정 ' 과 ' 날짜 설정 ' 2 개 를 만들 어 준다 . 이제 Radiobutton 을 다 만들 었 으니 RadioGroup 을 닫 고 새로운 LinearLayout 을 만들 어 준다 . 그리고 그 안 에 동시 에 2 개 의 기능 을 넣 기 위해 FrameLayout 을 추가 한다 . 그리고 다시 그 태그 안 에 DatePicker ( 달력 ) 와 TimePicker ( 시간 ) 을 만든 다 . 맨 아래 상단 에 지금 의 날짜 와 시간 을 표시 해 주 기 위해 LinearLayout 을 새로 만들 며 그 안 에 TextView 를 이용 해 표시 되 는 숫자 와 고정 되 는 문자 하나 하나 씩 만들 어 준다 . 중앙 정렬 을 해 주 기 위해 LinearLayout 안 에 gravity 를 이용 해 준다 . 나머지 도 마찬가지 로 위 의 사진 과 같이 추가 해 준다 . 그럼 xml 의 코드 가 끝 났 다 . 자 바코드 를 작성 하 는데 각각 xml 에서 작성 했 던 button , textview 등 에 쓰 엿 던 것 과 연동 시켜 주 기 위해 변수 를 선언 하 며 그 변수 에 각각 findViewById 를 이용 해 연결 시켜 준다 . 그리고 첫 시작 시 화면 에 chronometer 와 언더 바 ( 현재 날짜 시각 표시 ) 를 제외 하 고 안 보이 게 만들 기 위해 나머지 인 타임 피커 , 데이트 피커 , 라디오 버튼 2 개 를 setVisibility 값 을 INVISIBLE 로 주 어 첫 시작 시 감춘다 . 그럼 다음 으로 기능 을 만든 다 . 라디오 버튼 2 개 는 setOnClickListener 를 이용 해 작성 하 고 그 안 에 아까와 마찬가지 로 setVisibility 기능 을 이용 해 타임 피커 와 , 데이트 피커 가 사라지 고 나타나 게 만든다 . chrono ( chronometer 연동 ) 을 setOnclickListener 를 이용 해 라디오 버튼 이 나타나 게 만들 어 주 기 위해 setVisibility 기능 을 이용 해 나타나 게 하 고 누를 시 ' 예약 에 걸린 시간 ' 이 흘러가 게 만들 기 위해 chronometer 값 을 0 으로 초기 화 하 는 setBase ( SystemClock . elapsedRealtime ( ) ) 을 지정 해 주 고 start ( ) ( 시작 명령어 ) 를 사용 하 며 setTextColor 를 이용 해 색 갈 을 RED ( 빨강 ) 으로 지정 해 준다 . 연도 를 롱 클릭 시 ' 예약 완료 ' 기능 과 라디오 버튼 , 데이트 피커 , 타임 피커 가 다시 사라지 게 기능 이 있 다 . 이 기능 은 setOnLongClickListener 를 이용 해 만드 는데 ' 예약 완료 ' 기능 을 위해 stop ( ) 을 사용 하 며 색 갈 을 blue ( 파랑 ) 로 바꿔 준다 다른 메뉴 가 다 사라지 게 만들 어 주 기 위해 위 에서 썻던 setVisibility 를 이용 한다 . 그리고 아래 하단 에 날짜 를 표시 해 주 기 위해 각각 의 TextView 에 날짜 를 가져오 는 함수 를 써준다 . 공유 하 기 글 요소