Ven*_*kat 7 android android-widget android-layout

在Android 4.0默认日历中,如果我们想要移动到下个月,那么我们需要滚动日历,但我需要通过按上图中存在的箭头移动到下个月或上个月.而且我想添加到默认日历.如果添加事件,那么该日期应该在图像中标记.
我用过这个CalendarView.
<CalendarView
android:id="@+id/calendarView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" />
Run Code Online (Sandbox Code Playgroud)
我想知道如何实际使用添加事件到这个CalendarView.
要移至下个月或上个月,您可以使用以下代码:
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);
}
});
Run Code Online (Sandbox Code Playgroud)
如果您想在默认日历中添加活动,则必须看到@ 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);
}
Run Code Online (Sandbox Code Playgroud)
但是CalendarView不能与事件一起使用.在Android文档中,您可以阅读以下内容CalendarView:
"此类是用于显示和选择日期的日历小部件".
我找不到改变细胞特性的简单方法.
如果您想在自己的caledar中添加事件,最好实现自己的日历,您可以在其中更改所有视图的属性.您可以在google.com上找到大量日历实施
| 归档时间: |
|
| 查看次数: |
3424 次 |
| 最近记录: |