Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 单击按钮将事件添加到S Planner_Java_Android_Calendar - Fatal编程技术网

Java 单击按钮将事件添加到S Planner

Java 单击按钮将事件添加到S Planner,java,android,calendar,Java,Android,Calendar,我有一个问题-我正在制作一个应用程序,我想在点击按钮时将一个新事件添加到用户的日历(我有一个s Planner,所以我正在测试它)。问题是,当涉及到日期和时间时,它只是没有改变。以下是代码: bCalendar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent calintent = new Intent(Intent.ACTION_INSERT);

我有一个问题-我正在制作一个应用程序,我想在点击按钮时将一个新事件添加到用户的日历(我有一个s Planner,所以我正在测试它)。问题是,当涉及到日期和时间时,它只是没有改变。以下是代码:

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”


我想将活动中的数据插入三星的Planner。除了日期和时间之外,我插入所有内容都没有问题。那里没有什么变化。如果您需要任何进一步的详细信息,请告诉。

多亏塞尔文指出了我的错误,我们才成功地做到了这一点。 创建一个包含日期和时间的字符串,并使用SimpleDataFormat进行转换 太久了

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();
                }

from doc:Intent Extras key:事件或重复事件实例的开始时间。(从纪元开始的毫秒)。。。那个么你们为什么要把字符串放在那个里呢?那个么我应该使用什么数据类型呢?long…………谢谢你们,我通过使用SimpleDataFormat成功地做到了这一点。