导航:首页 > APP软件 > 安卓calendarview属性

安卓calendarview属性

发布时间:2023-05-14 17:04:40

⑴ Android下几个相关的时间日期控件的用法

获取年月日,之前的日期不能选择

日历c = Calendar.getInstance(); //获取系统工具类【可以获取时间】DatePickerDialog datePickerDialog = new DatePickerDialog(context,new DatePickerDialog.OnDateSetListener(){@覆盖public void onDateSet(DatePicker view,int year,int month,int dayOfMonth){月+ = 1;yuyueTime.setText(year +“ - ”+ month +“ - ”+ dayOfMonth);}},c.get(Calendar.YEAR),c.get(Calendar.MONTH),c.get(Calendar.DATE)); //设置默认时间。datePickerDialog.getDatePicker()setMinDate(c.getTime()的getTime()); //设置最小值datePickerDialog.show();

相关类的认识
选取器(的DatePicker,TimerPicker,NumberPicker)
其中的DatePicker和TimerPicker都有窗口的形式显示日期和时间,再返回数据。

下面分别介绍这几种时间类的使用方法。

一.DatePicker日期选择类的使用

DatePicker的常用的XML属性

XML属性

描述

机器人:calendarViewShown 设置该日期选择是否显示CalendarView组件。

机器人:endYear 设置日期选择器允许选择的最后一年。

安卓的maxDate 设置该日期选择器的最大日期。以MM / DD / YYYY格式指定最大日期。

安卓的minDate 设置该日期选择器的最小日期。以MM / DD / YYYY格式指定最小日期。

机器人:spinnersShown 设置该日期选择器是否显示微调日期选择组件。

机器人:startYear 设置日期选择器允许选择的第一年。


当用户更改了的DatePicker里的年,月,日时,将触发OnDateChangedListener监听器的onDateChange()事件。

二.TimePicker日期选择类的使用


当用户更改了TimePicker里的时,分时,将触发OnTimeChangedListener监听器的onTimeChanged事件。

下面是日期选择类和时间选择类的一个使用示例:

(一)布局文件设计

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:text="显示日期的控件" /><DatePicker android:id="@+id/main_dp"android:layout_width="wrap_content"android:layout_height="wrap_content" /><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:text="显示时间的控件" /><TimePicker android:id="@+id/main_tp_showTime"android:layout_width="wrap_content"android:layout_height="wrap_content" /><TextView android:id="@+id/main_tv_showdate"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示日期" /><TextView android:id="@+id/main_tv_showtime"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示时间" /></LinearLayout>

⑵ 为什么CalendarView控件的属性都无效

可能是软件故障。
建议重启,或者卸载软件,清理缓存,重新安装即可。日历控件定制是移动开发平台上比较常见的而且比较难的需求,但现在有了全新闹慧悉的CalendarView控件,它解锁了各碧告种姿势,而且你可以任意定液乎制。

⑶ 安卓日历整体布局是怎么实现的

自定义日历控件,支持旧历、节气、日期标注、点击操作 (参考网络上的日历控件改写)
注:将下面的四张资源图片拷贝到所建包的下一个image目录中,如Calendar.java 所在包为
cc.util.android.view,则需要再创建一个包cc.util.android.view.image 然后将图片拷贝进去
/****************从此出开始将代码拷贝到一个文件中*******************/
package cc.util.android.view;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.StateListDrawable;
import android.text.TextUtils.TruncateAt;
import android.util.AttributeSet;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnTouchListener;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.TranslateAnimation;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.ViewFlipper;
import android.widget.AbsListView.LayoutParams;

/**
* 日历控件,支持旧历、节气、日期标注、点击操作 (参考网络上的日历控件改写)
*
* @author wangcccong
* @version 1.406 create at: Mon, 03 Sep. 2014
* <br>update at: Mon, 23 Sep. 2014
* 新增日期标注和点击操作
*/
public class CalendarView extends LinearLayout implements OnTouchListener,
AnimationListener, OnGestureListener {

/**
* 点击日历
*/
public interface OnCalendarViewListener {
void onCalendarItemClick(CalendarView view, Date date);
}

/** 顶部控件所占高度 */
private final static int TOP_HEIGHT = 40;
/** 日历item中默认id从0xff0000开始 */
private final static int DEFAULT_ID = 0xff0000;

// 判断手势用
private static final int SWIPE_MIN_DISTANCE = 120;
private static final int SWIPE_MAX_OFF_PATH = 250;
private static final int SWIPE_THRESHOLD_VELOCITY = 200;

// 屏幕宽度和高度
private int screenWidth;

// 动画
private Animation slideLeftIn;
private Animation slideLeftOut;
private Animation slideRightIn;
private Animation slideRightOut;
private ViewFlipper viewFlipper;
private GestureDetector mGesture = null;

/** 上一月 */
private GridView gView1;
/** 当月 */
private GridView gView2;
/** 下一月 */
private GridView gView3;

boolean bIsSelection = false;// 是否是选择事件发生
private Calendar calStartDate = Calendar.getInstance();// 当前显示的日历
private Calendar calSelected = Calendar.getInstance(); // 选择的日历
private CalendarGridViewAdapter gAdapter;
private CalendarGridViewAdapter gAdapter1;
private CalendarGridViewAdapter gAdapter3;

private LinearLayout mMainLayout;
private TextView mTitle; // 显示年月

private int iMonthViewCurrentMonth = 0; // 当前视图月
private int iMonthViewCurrentYear = 0; // 当前视图年

private static final int caltitleLayoutID = 66; // title布局ID
private static final int calLayoutID = 55; // 日历布局ID
private Context mContext;

/** 标注日期 */
private final List<Date> markDates;

private OnCalendarViewListener mListener;

public CalendarView(Context context) {
this(context, null);
}

public CalendarView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
mContext = context;
markDates = new ArrayList<Date>();
init();
}

// 初始化相关工作
protected void init() {
// 得到屏幕的宽度
screenWidth = mContext.getResources().getDisplayMetrics().widthPixels;

// 滑动的动画
slideLeftIn = new TranslateAnimation(screenWidth, 0, 0, 0);
slideLeftIn.setDuration(400);
slideLeftIn.setAnimationListener(this);
slideLeftOut = new TranslateAnimation(0, -screenWidth, 0, 0);
slideLeftOut.setDuration(400);
slideLeftOut.setAnimationListener(this);
slideRightIn = new TranslateAnimation

⑷ 如何使用Exchange Web Service获取日历

如何使用Exchange Web Service获取日历
(1)首先生成代理类

ExchangeServiceBinding _ExchangeBinding = new ExchangeServiceBinding();
_ExchangeBinding.Credentials = new NetworkCredential(username, password, domain);
_ExchangeBinding.Url = Helper.GetWebconfig("exchangewebservice");

(2)定义请求的属性
请注意:在定义请求属性时,一定正册凳要定义CalendarViewType属性,默认的日历返回是不含循环日历的,
如果需要返回循环会议请举旅求,就需姿返要等译CalendarView

FindItemType findItemRequest = new FindItemType();

ItemResponseShapeType itemProperties = new ItemResponseShapeType();
itemProperties.BaseShape = DefaultShapeNamesType.AllProperties;
findItemRequest.ItemShape = itemProperties;

//我们查找的是日历
DistinguishedFolderIdType[] folderIDs = { new DistinguishedFolderIdType { Id = DistinguishedFolderIdNameType.calendar } };
findItemRequest.ParentFolderIds = folderIDs;

//增加搜索的日历范围,红色代码要饭服务器返回循环会议

CalendarViewType cldview = new CalendarViewType();
cldview.StartDate = dt.AddDays(-2);
cldview.EndDate = dt.AddDays(2);
findItemRequest.Item = cldview;

findItemRequest.Traversal = ItemQueryTraversalType.Shallow;

阅读全文

与安卓calendarview属性相关的资料

热点内容
5g通讯腔体怎么编程 浏览:413
扫描王怎么创建pdf文件 浏览:268
视频文件上下压缩 浏览:17
好多pdf文件怎么放到一个文件 浏览:258
易营销app怎么样 浏览:720
屏幕完全坏了如何拿出数据 浏览:284
手机上的k歌文件在哪里 浏览:672
手机百度云好友文件在哪里 浏览:351
苹果手机备份数据怎么备份 浏览:579
word2013导航怎么做 浏览:52
微信嘀嘀怎么充值 浏览:646
盘符文件名称路径 浏览:684
小米计算器代码 浏览:873
linuxc读取文件 浏览:635
安卓写笔记软件 浏览:412
少儿电子编程是什么 浏览:425
数据中的间谍是什么 浏览:44
gps导出来的数据是乱码怎么办 浏览:575
360宏病毒专杀后文件没有了 浏览:257
手机显示有网络为什么没信号 浏览:197

友情链接