상세 컨텐츠

본문 제목

[안드로이드] 달력 (DatePicker) 버튼(Button) 으로 호출하는 방법

안드로이드

by aries574 2022. 3. 8. 15:05

본문


이번 시간에는 DatePicker 컴포넌트를 화면에 태그로

보여주는 방법이 아니라 버튼을 누르면 코드에서 호출

하는 방법을 알아보겠습니다. 


목차

1. 실행 화면

2. 메인 화면 구성 activity_main.xml

3. 메인 코드 구현 MainActivity.java


1. 실행 화면

 

2. 메인 화면 구성 activity_main.xml

 - 설명 - 

 1. 텍스트뷰(TextView)와 버튼(Button)으로 구성된 화면입니다. 

 2. 텍스트뷰(TextView)는 선택한 날짜를 보여줍니다. 

 3. 버튼을 누르면 달력(DatePickerDialog)이 호출되며,

  날짜를 선택하면 텍스트뷰(TextView)에 보입니다. 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:gravity="center"
    android:orientation="vertical"
    tools:context=".MainActivity">
    
    <TextView
        android:id="@+id/date_text_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Select Date"
        android:textSize="40sp" />

    <Button
        android:id="@+id/date_picker_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp"
        android:text="달력" />
</LinearLayout>


3. 메인 코드 구현 MainActivity.java

 - 설명 - 

 1. DatePickerDialog를 통해 달력을 호출합니다. 

 2. DatePickerDialog를 호출하기 위해 필요한

 매개변수는 달력을 보여줄 화면(MainActivity), 날짜(년, 월, 일)

 이 필요합니다. 

 3. Calendar클래스를 통해서 현재 년, 월, 일을 얻어 변수에 담아

 매개변수로 넘겼습니다. 

 4. Show() 메서드를 통해 DatePickerDialog를 호출합니다. 

public class MainActivity extends AppCompatActivity {

    TextView dateText;

    DatePickerDialog datePickerDialog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //텍스트뷰 변수에 담기
        dateText = findViewById(R.id.date_text_view);

        //버튼 변수에 담기
        Button datePickerBtn = findViewById(R.id.date_picker_btn);
        
        //버튼 클릭 이벤트 설정
        datePickerBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                //오늘 날짜(년,월,일) 변수에 담기
                Calendar calendar = Calendar.getInstance();
                int pYear = calendar.get(Calendar.YEAR); //년
                int pMonth = calendar.get(Calendar.MONTH);//월
                int pDay = calendar.get(Calendar.DAY_OF_MONTH);//일

                datePickerDialog = new DatePickerDialog(MainActivity.this,
                        new DatePickerDialog.OnDateSetListener() {
                            @Override
                            public void onDateSet(DatePicker datePicker, int year, int month, int day) {

                                //1월은 0부터 시작하기 때문에 +1을 해준다.
                                month = month + 1;
                                String date = year + "/" + month + "/" + day;

                                dateText.setText(date);
                            }
                        }, pYear, pMonth, pDay);
                datePickerDialog.show();
            } //onClick
        });
    }//onCreate
}//MainActivity

2022.01.11 - [안드로이드] - [안드로이드] Material DatePicker 달력(캘린더) 만드는 방법

 

[안드로이드] Material DatePicker 달력(캘린더) 만드는 방법

이번 시간에는 Material 라이브러리를 등록해서 DatePicker 달력(캘린더) 만드는 방법을 알아보겠습니다. 목차 1. 실행화면 2. 라이브러리 등록 3. 테마 수정 4. 메인 화면 구성 activity_main.xml 5. 메인 코

aries574.tistory.com

2022.01.27 - [안드로이드] - [안드로이드] 밀어서 날짜 변경하는 달력(SlideDatePicker) 쉽게 만드는 방법

 

[안드로이드] 밀어서 날짜 변경하는 달력(SlideDatePicker) 쉽게 만드는 방법

이번 시간에는 밀어서 날짜 변경하는 달력을 쉽게 만들 수 있는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 라이브러리 등록 3. 메인 화면 구성 activity_main.xml 4. 메인 코드 구현 MainActivity.j

aries574.tistory.com

2020.12.24 - [안드로이드] - [안드로이드] DatePicker 달력(캘린더) 만들어보기

 

[안드로이드]DatePicker 달력(캘린더) 만들어보기

2020/12/23 - [안드로이드] - [안드로이드]TimePicker 내가 선택한 알람시간 텍스트뷰에 보여주기 이번 시간에는 달력을 만들어 보겠습니다. 1. 화면구현(activity_main.xml) <?xml version="1.0" encoding="utf-8..

aries574.tistory.com

반응형

관련글 더보기

댓글 영역