次の月または前の月に移動するには、次のコードを使用できます。
mButtonNext = (Button) findViewById(R.id.buttonNext);
mButtonNext.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Calendar cal = new GregorianCalendar();
cal.setTimeInMillis(mCalendarView.getDate() );
cal.add(Calendar.MONTH, 1);
mCalendarView.setDate(cal.getTimeInMillis(), true, true);
}
});
mButtonPrevious = (Button) findViewById(R.id.buttonPrevious);
mButtonPrevious.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Calendar cal = new GregorianCalendar();
cal.setTimeInMillis(mCalendarView.getDate() );
cal.add(Calendar.MONTH, -1);
mCalendarView.setDate(cal.getTimeInMillis(), true, true);
}
});
デフォルトのカレンダーにイベントを追加したい場合は、リンク @adam2510 が投稿されていることを確認する必要があります。使用できるサンプルコードは次のとおりです。
public void addEvent() {
ContentResolver cr = mContext.getContentResolver();
ContentValues eventValues = new ContentValues();
eventValues.put(Events.TITLE, "title");
eventValues.put(Events.EVENT_LOCATION, "location");
eventValues.put(Events.DTSTART, startTimeMilliseconds);
eventValues.put(Events.DTEND, endTimeMilliseconds);
eventValues.put(Events.CALENDAR_ID, "1");//Defaul calendar
eventValues.put(Events.EVENT_TIMEZONE, TimeZone.SHORT);
cr.insert(Events.CONTENT_URI, eventValues);
}
ただしCalendarView
、イベントで使用するために作成されたものではありません。Androidのドキュメントでは、これを読むことができますCalendarView
:
「このクラスは、日付を表示および選択するためのカレンダー ウィジェットです」。
セルのプロパティを変更する簡単な方法が見つかりませんでした。
独自のカレンダーにイベントを追加する場合は、すべてのビューのプロパティを変更できる独自のカレンダーを実装することをお勧めします。google.com で見つけることができるカレンダーの実装がたくさんあります。