인코딩의 Decoding

반응형

안녕하세요 오늘은 사용자에게 날짜를 지정하게 도와 주는 DatePickerDialog를 구현해 보겠습니다.

 

상단 메뉴에서 File -> New -> Fragment -> Fragment(Blank) 클릭

 

Fragment Name을 지정하고 Finish 버튼 클릭
다음과 같이 DialogFragment 구현

package com.example.datepickerexample;

import android.app.DatePickerDialog;
import android.app.Dialog;
import android.os.Bundle;
import android.widget.DatePicker;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.DialogFragment;

import java.util.Calendar;

public class DatePickerFragment extends DialogFragment
                        implements DatePickerDialog.OnDateSetListener{

    @NonNull
    @Override
    public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {

        final Calendar c = Calendar.getInstance();
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH);
        int day = c.get(Calendar.DAY_OF_MONTH);

        return new DatePickerDialog(getActivity(),this,year,month,day);
    }

    @Override
    public void onDateSet(DatePicker view, int year, int month, int day) {

    }
}

 

Activity(MainActivity)에 버튼 추가 -> onClick이벤트 만들기
onClick 메소드 구현

 package com.example.datepickerexample;

import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.DialogFragment;

import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

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

    public void calllDateDialog(View view) {
        DialogFragment dateFragment = new DatePickerFragment();
        dateFragment.show(getSupportFragmentManager(),"dateFragment");
    }
}

 

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band