unity3d的日历控件

开发了一个日历控件,在unity3d里面使用。使用方法如下:

首先写一个回调函数,函数参数为DateTime类型,当日历控件关闭时,选择的时间信息作为这个参数传入到这个回调函数,函数例子如下:

void SetBeginTime(DateTime dateTime)
{
    _beginTimeLabel.text = dateTime.ToString("yyyy-MM-dd");
}

调用就非常简单了,如下:

calendarObj.SetActive(true);
Calendar calendar = _calendarObj.GetComponent();
calendar.callBack = SetBeginTime;


首先是将GameObject显示出来,然后获取到里面的calendar这个脚本对象,然后传入上面的回调函数就可以了。

当你在设置了时间之后,会自动回调这个回调函数。


Calendar类和相对应的GameObject我放在我的资源里面了。

unity3d的日历控件_第1张图片


-------------------------------------- 分割线 --------------------------------------------


使用的简单教程:

1. 由于我之前的疏忽,需要再次下载我新上传的unitypackage文件(不需要积分了),配合之前资源里面的c sharp文件使用

2. 导入ngui到工程,版本不能太低,我使用的是3.6.8的版本。

3. 导入Calendar.unitypackage文件。

4. 新建Scripts文件夹,将Calendar.cs文件放到里面。project里面资源应该和以下类似:

unity3d的日历控件_第2张图片

unity3d的日历控件_第3张图片

5. 创建一个ngui的ui root,然后拖动Calendar的prefab到下面,如下所示

unity3d的日历控件_第4张图片

6. 补全Calendar的所有altas,应该有Background,BtnX,X,YearPageCtrl和MonthPageCtrl里面的Home,Prev,Next,End,Dates/Item1/Btn Valid,BtnOk,BtnReset等。

使用ngui默认的就可以,随表挑选一些,熟悉了之后可以用自己的资源替换。补全之后场景里面显示大致如下:

unity3d的日历控件_第5张图片

7. 定位到Calendar物体上,在脚本处显示丢失了脚本,将Scripts下面的calendar.cs拖上去就行了。

8. 运行,结果如下:

unity3d的日历控件_第6张图片

你可能感兴趣的:(unity3d的日历控件)