我遇到了问题 - 我正在创建一个应用程序,并且我希望在按钮点击时向用户的日历添加一个新事件(我有一个S计划员,因此我正在对其进行测试)。问题在于日期和时间 - 它不会发生变化。这是代码:
bCalendar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent calintent = new Intent(Intent.ACTION_INSERT);
calintent.setType("vnd.android.cursor.item/event");
calintent.putExtra(CalendarContract.Events.TITLE, eventname);
calintent.putExtra(CalendarContract.Events.EVENT_LOCATION, city + ", " + street);
calintent.putExtra(CalendarContract.Events.DESCRIPTION, description);
calintent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, timestart);
startActivity(calintent);
}
});
timestart是一个通过其他活动传递的字符串,例如" 15:00"。
我想将活动中的数据插入到三星的S Planner中。插入除日期和时间之外的所有内容都没有问题。 Screenshot那里没有任何变化。如果您需要任何进一步的细节,请告诉我们。
答案 0 :(得分:0)
由于塞尔文指出了我的错误,因此无法管理。 制作一个包含日期和时间的字符串,并使用SimpleDateFormat对其进行转换 很久。
bCalendar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent calintent = new Intent(Intent.ACTION_INSERT);
String dateString = datestart+" "+timestart;
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm");
try{
Date d = f.parse(dateString);
long millis = d.getTime();
calintent.setType("vnd.android.cursor.item/event");
calintent.putExtra(CalendarContract.Events.TITLE, eventname);
calintent.putExtra(CalendarContract.Events.EVENT_LOCATION, city + ", " + street);
calintent.putExtra(CalendarContract.Events.DESCRIPTION, description);
calintent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, millis);
startActivity(calintent);
} catch(ParseException e){
e.printStackTrace();
}