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。请检查它....
答案 0 :(得分:0)
这样的事情:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(RESULT_OK == resultCode){
//XXXXXXXX
} else if (RESULT_CANCELED == resultCode){
//XXXXXXXX
}
}