timePickerDialogでAM/PM値を取得したいとします。私のコードはそうです、それはtimepickerdialog経由でユーザーからの入力を受けて、アラームを設定しています。 onTimeSet関数呼び出しは、私は、ユーザーが選択したAM/PM値を取得することができ、ユーザが選択した時間と分を取得することはできませんが、とき、ここで私は今、ユーザーの入力TimePickerDialog AM PM値の取得方法
datetime = Calendar.getInstance();
new TimePickerDialog(this,this,datetime.get(Calendar.HOUR),datetime.get(Calendar.MINUTE),false).show();
を取得しています。ここに他のコードは
public void onTimeSet(TimePicker view, int hourOfDay, int minute) { try { Calendar time = Calendar.getInstance();
String am_pm;
if (datetime.get(Calendar.AM_PM) == Calendar.AM)
am_pm = "AM";
else if (datetime.get(Calendar.AM_PM) == Calendar.PM)
am_pm = "PM";
time.set(Calendar.HOUR, hourOfDay);
time.set(Calendar.MINUTE, minute);
//time.set(Calendar.SECOND, 0);
//time.set(Calendar.MILLISECOND, 0);
//time.set(Calendar.AM_PM,datetime.PM);
AlarmManager alarmMgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
alarmMgr.set(AlarmManager.RTC_WAKEUP,time.getTimeInMillis(), pendingIntent);
Toast.makeText(this, "Alarm Set", Toast.LENGTH_long);
@Philipp Reichartは返事を感謝します。私は下のポストからの理解を得た。今私はabt AM PM値を話していません。私はアンドロイドがユーザーを選択すると24時間形式に変換するansを得た。私の "time"オブジェクト(上記のコード)のHour_Of_Dayおよびminutesパラメータを設定した後。私はsetメソッドを呼び出し、time.getTimeInMillis()を呼び出します。問題は、次の日の時刻を設定すると(私の現在のシステム時刻が午後9時で、翌日の午後8時に設定されていますが)alarmManagerがすぐにアラームをトリガーすることです。これについて私を導くことができますか? –