私はこのCalendarViewを下に持っています
そして、今日の日付であるその日をクリックすると、ダイアログがポップアップします。しかし、CurrentDateより前の日付をクリックすると、このカレンダーはポップアップしません。現在の日時より前のイベントを追加できないと表示されます。今日の日付の後の任意の日をクリックすると正常に動作していますが、今日の日付をクリックすると、その前の日付をクリックしたときと同じようにメッセージが表示されます...
これが日付を比較するための私のコードです
long currentTime;
Date curr = new Date();
currentTime = curr.getTime();
if(cw.getDate() >= currentTime || formatDate(cw.getDate()) == formatDate(currentTime))
{
Dialog d = new Dialog(ScheduleActivity.this);
//some code for setting up the dialog
d.show();
}
else
{
Toast toast = Toast.makeText(ScheduleActivity.this, Long.toString(cw.getDate())+" || "+Long.toString(currentTime),10000);
toast.show();
Log.d("timecheck", formatDate(cw.getDate())+" || "+ formatDate(currentTime));
}
そのformatDateをMM/dd / yyyyの形式で使用して、2つの日付を比較しました。タイムスタンプだけを比較しても機能しません("> = "を使用)
ところで、トーストが変更されているので、比較されている値を確認できます...ミリ秒単位では実際には異なりますが、MM / dd / yyにフォーマットすると、同じように表示されます...しかし、 ifの部分を通過するとelseの部分に移動します。iformattedDateをlogcat、以下のlogcatに記録しました。
Logcatログ