gpt4 book ai didi

android - CalendarView getDate 方法返回当前日期,而不是选定日期......我做错了什么?

转载 作者:行者123 更新时间:2023-12-01 10:27:45 25 4
gpt4 key购买 nike

我的 calendarView 无法返回所选日期,而是返回一些始终指向今天的默认值。

我当然要更改日历中选择的日期,它确实显示为已更改。我尝试在 Debug模式下检查 View ,但没有找到任何东西。

我在模拟器上运行它,而不是在真手机上运行......我应该修改一些设置吗?我错过了什么重要的东西吗?因为我没有得到选定的日期,而是当前的日期,这真的很令人困惑。

<CalendarView
android:id="@+id/view_calendar_create_event_date"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1" />

这是从事件监听器调用的
protected void createEvent(View view){
TextView eventNameView = (TextView) this.findViewById(R.id.createEventNameInput);
String eventName = eventNameView.getEditableText().toString();

CalendarView eventOccursOnView = (CalendarView) this.findViewById(R.id.view_calendar_create_event_date);
long eventOccursOn = eventOccursOnView.getDate();
Date temporary = new Date(eventOccursOn);

Event newEvent = new Event(eventName, "", 0, 0, eventOccursOn);
newEvent.save(view.getContext());
}

这就是我设置事件监听器的方式
saveButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
// Create the event
EventDetailsActivity.this.createEvent(view);

// Notify the user
Snackbar.make(view, "Successfully created a new event!", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();

// Return to the previous activity
finish();
}
});

最佳答案

您需要执行 setOnDateChangeListener

long eventOccursOn;

eventOccursOnView.setOnDateChangeListener(new OnDateChangeListener() {
//show the selected date as a toast
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int day) {
Toast.makeText(getApplicationContext(), day + "/" + month + "/" + year, Toast.LENGTH_LONG).show();
Calendar c = Calendar.getInstance();
c.set(year, month, day);
eventOccursOn = c.getTimeInMillis(); //this is what you want to use later
}
});

关于android - CalendarView getDate 方法返回当前日期,而不是选定日期......我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46144150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com