Java Can';t使用API响应中的日期将事件添加到周视图
我的API在Java Can';t使用API响应中的日期将事件添加到周视图,java,android,api,date,calendar,Java,Android,Api,Date,Calendar,我的API在MongoDB中加入了一个BsonDateTime。我从这个API收到两个日期,分别是startDate和endDate,但我不能用它将事件添加到周视图中。当我将startDate转换为字符串时,它会写入Mon May 14 08:00:00 GMT+01:00 2018 这是《邮差》中的内容: [ { "Id": "5b51ab5ad09030396092b0cd", "userId": "5b56f3c714e86f36e0433359", "compan
MongoDB
中加入了一个BsonDateTime。我从这个API收到两个日期,分别是startDate和endDate,但我不能用它将事件添加到周视图中。当我将startDate转换为字符串时,它会写入Mon May 14 08:00:00 GMT+01:00 2018
这是《邮差》中的内容:
[
{
"Id": "5b51ab5ad09030396092b0cd",
"userId": "5b56f3c714e86f36e0433359",
"company": "Empresa 2",
"year": "2015",
"month": "May",
"day": "15",
"weekDay": "Tuesday",
"shift": "Morning",
"weekDayId": "2",
"shiftId": "1",
"hours": "8",
"startDate": "2018-05-14T07:00:00Z",
"endDate": "2018-05-14T16:00:00Z"
}
]
这是我在Android Studio中的代码:
public void updateEvents() {
weekView.setMonthChangeListener(new MonthLoader.MonthChangeListener() {
@Override
public List<? extends WeekViewEvent> onMonthChange(int newYear, int newMonth) {
Thread.currentThread().interrupt();
APIInterface apiInterface = APIClient.getClient().create(APIInterface.class);
Call<Schedule[]> call = apiInterface.getScheduleByUserID("5b56f3c714e86f36e0433359");
call.enqueue(new Callback<Schedule[]>() {
@Override
public void onResponse(Call<Schedule[]> call, final Response<Schedule[]> response) {
start = response.body()[0].getStartDate();
end = response.body()[0].getStartDate();
Toast.makeText(DiaHorarioActivity.this, start.toString(), Toast.LENGTH_SHORT).show();
Toast.makeText(DiaHorarioActivity.this, end.toString(), Toast.LENGTH_SHORT).show();
Calendar startTime = new GregorianCalendar();
startTime.setTime(start);
Calendar endTime = (Calendar) startTime.clone();
endTime.setTime(end);
WeekViewEvent event = new WeekViewEvent(1, "test", startTime, endTime);
event.setColor(getResources().getColor(R.color.cardRejeitar));
events.add(event);
}
@Override
public void onFailure(Call<Schedule[]> call, Throwable t) {
Toast.makeText(DiaHorarioActivity.this, t.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
}
});
Thread.currentThread().run();
return events;
}
});
}
public void updateEvents(){
setMonthChangeListener(新的MonthLoader.MonthChangeListener(){
@凌驾
public ListFYI,像java.util.date
、java.util.Calendar
、和java.text.SimpleDateFormat
这样麻烦的旧日期时间类现在是遗留的,被类所取代。在项目中,许多java.time功能被移植到java 6和java 7。进一步适应项目中早期的Androidt、 看到了。非常感谢!真的很有帮助。很好。现在你可以写一个你自己问题的答案,展示你的解决方案。