2014-05-12 5 views
0

Android 앱에서 다음 두 가지 작업을 수행했습니다. 먼저 edittext를 클릭하면 Datepicker가 열립니다. 나는 날짜를 클릭하고 날짜는 2014 년 12 월 5 일 형식으로 된 edittext에서 설정합니다. 2014 년 5 월 12 일과 같은 형식으로 설정하고 싶습니다. 어떻게하는지. 두 번째로, 다른 편집 문구를 클릭 할 때 나는 클릭하여 시간에 ediitext의 시간을 1시 30 분으로 설정하는 TimePicker를 엽니 다. 오후 1시 30 분처럼 설정하고 싶습니다. 이 작업을 수행하는 방법? 아래 코드를 게시하고 있습니다. 단계별 안내를 해주십시오.Android에서 Datepicker 및 Timepicker를 사용하여 2014 년 5 월 12 일과 오후 1:30 PM 형식으로 날짜를 설정하는 방법은 무엇입니까?

DatePicker에서 코드

final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() { 

@Override 
public void onDateSet(DatePicker view, int year, int monthOfYear, 
     int dayOfMonth) { 
    // TODO Auto-generated method stub 
    myCalendar.set(Calendar.YEAR, year); 
     myCalendar.set(Calendar.MONTH, monthOfYear); 
     myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth); 
     updateLabel(); 
} 

private void updateLabel() { 
    // TODO Auto-generated method stub 
    String myFormat = "MM/dd/yy"; //In which you need put here 
    SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US); 

    datepick.setText(sdf.format(myCalendar.getTime())); 
} 

    }; 
datepick.setOnClickListener(new OnClickListener() { 

@Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 
    new DatePickerDialog(getActivity(), date, myCalendar 
      .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH), 
      myCalendar.get(Calendar.DAY_OF_MONTH)).show(); 
} 
    }); 

TimePicker 코드

tasktime.setOnClickListener(new OnClickListener() { 

@Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 
    Calendar mcurrentTime = Calendar.getInstance(); 
    int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY); 
    int minute = mcurrentTime.get(Calendar.MINUTE); 

    TimePickerDialog mTimePicker; 
    mTimePicker=new TimePickerDialog(getActivity(), new TimePickerDialog.OnTimeSetListener() { 

     @Override 
     public void onTimeSet(TimePicker view, int hourOfDay, int minute) { 
      // TODO Auto-generated method stub 
      tasktime.setText(hourOfDay + ":" + minute); 
     } 
    }, hour, minute, true); 
    mTimePicker.setTitle("Select Time"); 
    mTimePicker.show(); 
} 
    }); 
+0

코드의 결과는 무엇입니까?, 날짜와 시간의 출력은 어떻게됩니까? –

+0

2014 년 12 월 5 일과 12시 30 분에 날짜가 표시됩니다. – user3256145

답변

1

변경 "MM/DD/YY"에서 날짜의 형식을 "dd MMM, yyyy"로 그리고 시간도 "h : mm a"형식으로 simpleDateFomate를 사용하십시오.

+0

고맙습니다. 날짜가 – user3256145

+0

인데 작동하지 않았습니까? –

0
// try this way,hope this will help you.... 

@Override 
public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) { 
    Time chosenDate = new Time(); 
    chosenDate.set(dayOfMonth, monthOfYear, year); 
    long dt = chosenDate.toMillis(true); 
    CharSequence strDate = DateFormat.format(MM/dd/yy", dt); 
    datepick.setText(strDate.toString()); 
} 

@Override 
public void onTimeSet(TimePicker view, int hourOfDay, int minute) { 
    Calendar date = Calendar.getInstance(); 
    Time chosenDate = new Time(); 
    chosenDate.set(0, minute, hourOfDay, date.get(Calendar.DAY_OF_MONTH), date.get(Calendar.MONTH), date.get(Calendar.YEAR)); 
    long dt = chosenDate.toMillis(true); 
    CharSequence strDate = DateFormat.format("kk:mm", dt); 
    tasktime.setText(strDate); 
} 
0

사용 SimpleDateFormat의. 아래의 방법을 사용하여 시간

public static String dateFormatter(String date) 

    { 
     SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy"); 

     String s = ""; 
     try { 
      Date dt = sdf.parse(date); 
      sdf = new SimpleDateFormat("dd-MMM-yyyy"); 
      s = sdf.format(dt); 
      // Log.v("*****", s); 

     } catch (ParseException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     return s; 
    } 

은 아래 링크를 참조하시기 바랍니다 매개 변수로 문자열 형식으로 날짜를 제공 Convert time value to format “hh:mm Am/Pm” using Android