自定义日历模态插件编程总结

一.任务要求:

根据式样demo,点击按钮,在本视图弹出一个模态对话框,显示自定义日历,选择日期,日历标题进行相应的变化,点击对话框最下边确定按钮,将当前选择的日期传递回去

二.任务分析:

1.实现样式的确定:

主要包括 :合理控件和视图的选取    控件和视图的布局和层级设计    模态弹出效果的实现类型和实现方式

难点:模态效果的制作     设计模态层级过程中的点击阴影部分,能够实现的根视图和当前视图的替换

模态效果制作难点:

ios7 之后,iOS 的模态效果默认是弹出的为全屏,即presentModalView 只能弹出全屏的界面,iphone 上用模态方法不能实现式样效果,

导航 和tab 的设计格式均与式样不符

因此替换了刚开始的设计方案,视图设计参考了单纯使用view 实现的模态效果方法

2.日历逻辑功能实现:

主要包括:

控件的选取  系统日期到式样所要实现的日期格式的转换     PickerView 日历数据算法实现  模态视图标题时间和选择时间的一一对应

难点1:

控件选取:

刚看式样,是日历,跟时间有关,选择的DatePicker 控件进行实现,这个实现起来比较容易,但要实现式样中的日期显示格式,以及对显示字体和控件大小进行灵活调整,

DatePicker 功能太有限,因此 又替换了DatePicker ,改为用PickerView 进行实现

重点2:

系统日期到式样的日期格式的转换:

因为PickerVIew 没有时间功能,Picker 中显示的特殊格式日期必须通过系统时间进行转换。涉及内容包括:1.读取系统时间,2.中文和中国时区处理;3.星期中文处理;4.生成PickerView 数据

重点3:

因为日历操作过于频繁,12月 到1月的年份转换,原计划根据 12月 到1月 加一年,1月到12月减一年,这样实现算法符合操作习惯,但后面实现过程中,

发现PickerView 控件能够隔行滚动,较难控制,换成了根据月份row 列取余数和当前年份相加

难点4:

PickerView 显示数据为两列,样式和数据显示过程中出了点问题,重点需要关注的是 didSelected Row代理方法中,前一列数据需要与后一列数据进行关联,这样才能得到正确的数据

3.标题显示选择数据和 用户选择日期回传:

只要可以获得正确的数据,标题显示数据 和日期回传都相对较简单,忽略不计

时间: 2024-10-05 04:12:46

自定义日历模态插件编程总结的相关文章

jQuery 插件编程精讲与技巧

适应的读者: 1.有一定的jquery编程基础但是想在技能上有所提升的人 2.前端开发的程序员 3.对编程感兴趣的学生 为什么要学习jquery插件的编写? 为什么要学习jquery插件的编写?相信这是很多人都会有的问题,因为目前市面上的插件众多基本上满足日常的开发需求,但是我认为一下的这几点情况是一定要学会插件基础才能解决的: 1.如果有这样的一种场景:假设如果你使用了一个控件,但是这个控件有缺少了一点点的相关的功能,那么如果你不懂jquery插件编写的话,那么你就只能找其他的控件进行补充,这

javascript实例学习之六—自定义日历控件

基于之前上篇博客轻量级jquery,tool.js和base.js.自定义开发的base_datePicker插件,效果类似于jquery_ui的datePicker插件 //基于Base.js以及tool.js做的日历插件 $().extend('datePicker', function() { //生成日历插件 var $yearSpan; var $monthSpan; var tds; var $prevBtn; var $nextBtn; var $lastTr; var $date

分享在winform下实现模块化插件编程

其实很早之前我就已经了解了在winform下实现插件编程,原理很简单,主要实现思路就是:先定一个插件接口作为插件样式及功能的约定,然后具体的插件就去实现这个插件接口,最后宿主(应用程序本身)就利用反射动态获取实现了插件接口的类型作为合法的插件,从而完成动态加载及宿主与插件之间的互动.因为之前一段时间一直搞B/S架构开发没有时间去实践,而恰好现在公司领导要求我对我公司原有的ERP系统架构进行重整,我们的ERP系统采用的基于分布式的三层架构,核心业务逻辑放在服务端,展示层与业务层之间采用基于WEB服

[转载]通达信插件选股(基于通达信插件编程规范的简单分析)

[转载]通达信插件选股(基于通达信插件编程规范的简单分析) 原文地址:通达信插件选股(基于通达信插件编程规范的简单分析)作者:哈尔滨猫猫 首先声明,鄙人是编程人员,不是股民.对选股概念了解甚少.本文仅作编程人员学习借鉴之用.不对选股理论进行探讨和解释. 以前有客户找我做过通达信插件选股的小任务,当时第一次接触面向接口(此类“接口”)编程,也是第一次接触到股票里相关的概念.最近由于接手一个任务,与上次开发相类似,故旧事重提,仔细研究一番.将个人学习研究所得知识与大家分享.在网上搜相关资料,可用的.

android自定义日历

前几天闲来无事,变想做一些小工具玩玩.花了一天多的时间,弄出一个简单日历的View.分为月份模式和星期模式.滚动查看,先上图看看: 上面的是显示的是月份的模式.下面是星期的模式: 一个很简单的自定义View,然后通过Viewpager的OnpageChangeListener进行刷新View的数据.Viewpager通过轮回使用View.我默认设置是5个.可以左右无限切换. 下面是自定义CalendarView: package com.example.calendar; import andr

android自定义日历的使用方法

子夜枯灯123提供了一个自定义的android日历,他的博客地址如下: http://blog.csdn.net/huangyanbin123/article/details/38350213 他提供的代码除了自定义日历外,还有一个demo,对于大部分人来说,仅仅需要展示一个日历,并响应日历的click事件即可.因此我简化了他的demo,给出了一个更加简单的demo和使用方法,方法分为三步: 第一步:导入 http://download.csdn.net/detail/huangyanbin12

用AJAX自定义日历

需求分析 在一些购物网站中,都会有促销活动,这些活动都在日历上标注出来,如何通过Ajax让日历 通过读取数据库中的信息,正确的把促销活动标注在日历上,本文通过自定义日历来实现这 个问题. 技术难点 日历的布局 日历的初始化 日历的动态变化 日历的促销定制 实现方法 1. 先创建一个固定的日历,效果如下 html代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF

jQuery自定义滚动条样式插件mCustomScrollbar

如果你构建一个很有特色和创意的网页,那么肯定希望定义网页中的滚动条样式,这方面的 jQuery 插件比较不错的,有两个:jScrollPane 和 mCustomScrollbar. 关于 jScrollPane,大家见过的可能比较多,但是这个插件太过于古老而且功能不强大,效果在几年前非常不错,但是放在现在就不好说了.所以我选择了后者:mCustomScrollbar.下图是两者官方示例的简单对比: 本文就是介绍如何使用 mCustomScrollbar 这个插件,大部分的内容是翻译自 mCus

自定义日历控件-CalendarView

转载请注明出处: http://blog.csdn.net/forwardyzk/article/details/43056675 我们在开发中会遇到使用到日历控件,下面就介绍一个自定义日历控件. 思路: 1.自定义类CalendarView继承LinearLayout,使用布局文件,显示布局. 2.使用ViewFlipper,里面添加GridView,当月的日期. 3.使用手势GestureDetector,控制ViewFlipper的滑动. calen_calendar.xml <span