De todos modos de obtener am / pm del tiempo?
Posible duplicado:
Visualización de la hora en formato AM / PM en android
Puedo obtener el tiempo y convertirlo en una cadena usando:
public static final String TIME_FORMAT = "h:mm a"; SimpleDateFormat dateTimeFormat = new SimpleDateFormat(TIME_FORMAT); String getstring = dateTimeFormat.format(when.gettime();
Pero ¿cómo puedo obtener am / pm de ella y convertirla en cadena beccause lo necesito?
prueba esto
Calendar now = Calendar.getInstance(); int a = now.get(Calendar.AM_PM); if(a == Calendar.AM) System.out.println("AM"+now.get(Calendar.HOUR));
Esto debería funcionar:
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() { public void onTimeSet(TimePicker view, int hourOfDay, int minute) { TextView datehid = (TextView)findViewById(R.id.timehidden); if(hourOfDay>12) { datehid.setText(String.valueOf(hourOfDay-12)+ ":"+(String.valueOf(minute)+"pm")); } if(hourOfDay==12) { datehid.setText("12"+ ":"+(String.valueOf(minute)+"pm")); } if(hourOfDay<12) { datehid.setText(String.valueOf(hourOfDay)+ ":"+(String.valueOf(minute)+"am")); } } };
Encontrado en una pregunta anterior .
De su código, parece que está utilizando objetos de fecha. En su lugar, recomiendo usar objetos de calendario, si es posible. Cuando es necesario, puede obtener un objeto Date desde un objeto Calendar a través del método getTime()
del Calendario.
Si tiene un objeto Calendario, puede hacer lo siguiente:
Calendar cal = ...; String ampm = DateUtils.getAMPMString(cal.get(Calendar.AM_PM));
DateUtils
es parte del framework de Android y está disponible de vuelta al nivel de API 3. getAMPMString()
devuelve una versión localizada de AM / PM. Vea los documentos en el sitio del desarrollador de Android.
Si no tiene un objeto Calendario disponible, puede crear uno desde el objeto de fecha:
Date date = ...; Calendar cal = Calendar.getInstance(); cal.setTime(date);
Sin embargo, dado que Calendar está en el lado pesado, es mejor trabajar directamente con objetos Calendar en lugar de crearlos y trashinglos.