2017-04-11 6 views
0

메신저를 설정했습니다. 앱이 인 텐트가있는 기본 캘린더 폰을 열면 사용자가 일정, 헤드 라인 및 위치의 시간을 설정합니다. 내 유일한 문제는 그것을 사용하는 방법을 모른다. OnDateChangeListener를 사용하거나 Onclick 만 사용해야하나요? 내가 무엇을하려하는지 궁금한 점은 사용자가 자신의 기본 달력에 이벤트를 설정하고 여는 매개 변수를 얻는 것입니다.Android CalendarView에서 CalendarView를 사용하여 캘린더 사용자에게 일정을 설정하려고 시도하는 중

이 코드 또한

public void addEvent(String title,String location, long begin, long end) { 
    Intent intent = new Intent(Intent.ACTION_INSERT) 
      .setData(CalendarContract.Events.CONTENT_URI) 
      .putExtra(CalendarContract.Events.TITLE, title) 
      .putExtra(CalendarContract.Events.EVENT_LOCATION, location) 
      .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, begin) 
      .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, end); 
    if (intent.resolveActivity(getPackageManager()) != null) { 
     startActivity(intent); 
    } 
} 

내가 "긴 시작"무엇을 알고 "긴 말"수단 싶습니다을 사용하고

? 사용자 입력입니까?

나는 분명히 충분히 있었으면 좋겠다.

+0

의 시작 시간과 종료 시간에 너무 이러한 권한을 추가합니다. –

+0

사용자가 입력 한 내용을 어떻게 알 수 있습니까? –

+0

시작 시간과 종료 시간을 얻으려면 UI를 만들어야합니다. timepicker를 사용하십시오. –

답변

0

당신은 여기

Calendar cal = Calendar.getInstance();    
Intent intent = new Intent(Intent.ACTION_EDIT); 
intent.setType("vnd.android.cursor.item/event"); 
intent.putExtra("beginTime", cal.getTimeInMillis()); 
intent.putExtra("allDay", true); 
intent.putExtra("rrule", "FREQ=YEARLY"); 
intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000); 
intent.putExtra("title", "A Test Event from android app"); 
startActivity(intent); 

시간 시작과 종료 시간을 사용하면 이벤트에 대한 설정하고 미리 알림의 시작 시간과 종료 시간입니다

아래의 코드를 사용하여 이벤트를 추가 할 수 있습니다.

이벤트에 대한 긴 (MS)의 매니페스트

<uses-permission android:name="android.permission.READ_CALENDAR" /> 
<uses-permission android:name="android.permission.WRITE_CALENDAR" /> 
+0

몇 가지 이유 때문에 ** 추가 할 수 없습니다. ** 캘린더 cal = Calendar.getInstance(); ** 가져 오기해야합니까? –

+0

java.lang.Object 가져 오기와 함께 제공됩니다. 외부 라이브러리를 추가 할 필요가 없습니다. – fightingCoder

+0

알겠습니다.하지만 코드 줄이 작동하지 않습니다. ** 캘린더 cal = 새 캘린더(); ** 작동 –