我们怎么知道用户点击了日历中的保存按钮来创建活动或取消按钮?

时间:2013-08-26 06:52:06

标签: android

Intent intent = new Intent(Intent.ACTION_INSERT)
                        .setData(Events.CONTENT_URI)
                        .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
                        .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
                        .putExtra(Events.TITLE, title)
                        .putExtra(Events.DESCRIPTION,desc )
                        .putExtra(Events.EVENT_LOCATION, loc)
                        .putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY);

我使用此代码添加event.I不想使用ContentValues插入,因为它不会让用户有机会选择他的日历。所以我怎么知道用户按下了保存或取消按钮? PLZZZZZZ帮助

startActivityForResult(intent,RESULT_CANCELED); 

根据您的建议,我使用它来启动日历活动,下面是我的onActivityResult回调。

 @Override
 public void onActivityResult(int req,int res,Intent intent){

                if(RESULT_OK==res){
                 Toast.makeText(getApplicationContext(), "Resuming Activity",Toast.LENGTH_LONG).show();
                Toast.makeText(getApplicationContext(),"Created Event number:"+String.valueOf(getLastEventID()), Toast.LENGTH_LONG).show();

                addReminder(getLastEventID());
                }
                else if(RESULT_CANCELED==res){
                    Toast.makeText(getApplicationContext(), "No events added",Toast.LENGTH_LONG).show();
                }
             }

现在的问题是,在按下DONE或CANCEL时,两个Toast时间都显示“没有添加任何事件”。这意味着DONE和CANCEL返回RESULT_CANCELED。请检查它....

1 个答案:

答案 0 :(得分:0)

这样的事情:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(RESULT_OK == resultCode){
         //XXXXXXXX
    } else if (RESULT_CANCELED == resultCode){
         //XXXXXXXX
    }
}