728x90

TimerPickerDialog를 자바 코드에서 사용하는 방법입니다.

 

public class MainActivity extends AppCompatActivity {
    ImageButton alarmButton;
    int alarmHour=0, alarmMinute=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        alarmButton = (ImageButton) findViewById(R.id.alarmButton);
        
        alarmButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                TimePickerDialog timePickerDialog = new TimePickerDialog
                (MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
                    @Override
                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
						
                    }
                },alarmHour, alarmMinute, false);
                timePickerDialog.show();
            }
        });
}

alarmButton이라는 버튼을 눌렀을 때 TimePickerDialog가 생성되도록 작성했습니다. 

public void onTimeSet의 매개변수인 hourOfDay, miute은 TimePickerDialog에서 선택한 시간을 저장하는 변수입니다.

 

TimePickerDialog를 생성할 때의 매개변수인 alarmHour, alarmMinute은 TimePickerDialog를 띄웠을 때 시간을 설정해 줍니다.

현재는 alarmHour와 alarmMinute이 0이니 아래처럼 나오게 됩니다.

여기서 alarmHour을 2로 세팅하면 TimePickerDialog를 띄웠을 때 아래처럼 나오게 됩니다.

 

false로 설정된 마지막 매개변수는 24시간 모드를 사용할 것인지에 대한 설정인데 false 값을 넣어줬다면 위처럼 AM, PM을 구분하게 나오고 true로 값을 넣어주면 아래처럼 나옵니다.

마지막으로 아래처럼 TimePickerDialog의 색과 종류를 바꿀 수 있습니다. 

alarmButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                TimePickerDialog timePickerDialog 
                = new TimePickerDialog(MainActivity.this, 
                android.R.style.Theme_Holo_Light_Dialog,new TimePickerDialog.OnTimeSetListener() {
                    @Override
                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

                    }
                },alarmHour, alarmMinute, false);
                timePickerDialog.show();
                Log.d(TAG, String.valueOf(alarmHour));
            }

        });

android.R.style.Theme_Holo_Light_Dialog
android.R.style.Theme
TimePickerDialog.THEME_DEVICE_DEFAULT_DARK

728x90

+ Recent posts