상세 컨텐츠

본문 제목

[안드로이드 코틀린] CalendarView 달력 만드는 방법

안드로이드

by aries574 2022. 7. 26. 13:55

본문


이번 시간에는 CalendarView를 이용해서 달력을 만드는 방법에 대하여 알아보겠습니다.


목차

1. 실행 화면
2. 메인 화면 구현 activity_main.xml
3. 메인 코드 구현 MainActivity.kt


1. 실행 화면

 

2. 메인 화면 구현 activity_main.xml

- 설명 -

1. 달력의 날짜를 선택하면 선택한 날짜를 보여주는 TextView

2. 달력을 보여주는 CalendarView

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/day_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/calendarView"
        android:layout_centerHorizontal="true"
        android:textSize="30sp"
        android:textStyle="bold" />

    <CalendarView
        android:id="@+id/calendarView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_marginTop="20dp" />
</RelativeLayout>

 


3. 메인 코드 구현 MainActivity.kt

- 설명 -

1. SimpleDateFormat

  날짜 포맷을 설정

2. dateFormat.format(date)

  날짜를 해당 포맷으로 변경

3. calendarView.setOnDateChangeListener

  calendarView 날짜 변경 시에 실행되는 이벤트

class MainActivity : AppCompatActivity(){

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        //객체 생성
        val dayText: TextView = findViewById(R.id.day_text)
        val calendarView: CalendarView = findViewById(R.id.calendarView)

        //날짜 형태
        val dateFormat: DateFormat = SimpleDateFormat("yyyy년MM월dd일")

        //date타입
        val date: Date = Date(calendarView.date)

        //현재 날짜 담기
        dayText.text = dateFormat.format(date)

        //CalendarView 날짜 변환 이벤트
        calendarView.setOnDateChangeListener { calendarView, year, month, dayOfMonth ->

            //날짜 변수에 담기
            var day: String = "${year}년 ${month}월 ${dayOfMonth}일"

            //변수 텍스트뷰에 담기
            dayText.text = day
        }

    }//onCreate

}

2022.07.25 - [안드로이드] - [안드로이드 코틀린] 스위치(Switch) On, Off 만드는 방법

 

[안드로이드 코틀린] 스위치(Switch) On, Off 만드는 방법

이번 시간에는 스위치(Switch)를 통해 두 개의 상태 값 ON, OFF 만드는 방법에 대하여 알아보겠습니다. 목차 1. 실행 화면 2. 메인 화면 구현 activity_main.xml 3. 메인 코드 구현 MainActivity.kt 1...

aries574.tistory.com

2022.07.24 - [안드로이드] - [안드로이드 코틀린] 볼륨 조절, 밝기 조절 SeekBar 만드는 방법

 

[안드로이드 코틀린] 볼륨 조절, 밝기 조절 SeekBar 만드는 방법

이번 시간에는 볼륨 조절, 밝기 조절에 쓰이는 SeekBar 만드는 방법에 대하여 알아보겠습니다. 목차 1. 실행 화면 2. 메인 화면 구현 activity_main.xml 3. 메인 코드 구현 MainActivity.kt 1. 실행 ..

aries574.tistory.com

2022.07.22 - [안드로이드] - [안드로이드 코틀린] 알림(Snackbar) 생성 및 취소 기능 만드는 방법

 

[안드로이드 코틀린] 알림(Snackbar) 생성 및 취소 기능 만드는 방법

이번 시간에는 Snackbar를 이용해서 알림 창을 띄어주고, 알림 창 안에 취소 버튼까지 만드는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 메인 화면 구현 activity_main.xml 3. 메인 코드 구현 Ma

aries574.tistory.com

 

반응형

관련글 더보기

댓글 영역