iOS中的自定义拖动日历

Posted

技术标签:

【中文标题】iOS中的自定义拖动日历【英文标题】:Custom drag calendar in iOS 【发布时间】:2015-07-09 17:27:30 【问题描述】:

我想知道如何在 ios 中实现如下所示的自定义日历:https://dribbble.com/shots/843863-Date-Filter/attachments/88756。用户将能够拖动日期以选择或取消选择它们。我对 iOS 开发还是有点陌生​​,所以我需要一些关于从哪里开始寻找可能的解决方案的指示。谢谢。

【问题讨论】:

【参考方案1】:

在您的视图控制器中,在touchesBegan 中获取触摸的位置,并从该触摸中计算出日期。然后在touchesEnded 中做同样的事情。使用这两个日期作为日期范围的边界,瞧,就是这样。如果您想在用户拖动手指时为日期范围设置动画,那么也可以在 touchesMoved 中执行相同的操作。

对于显示日期范围的蓝色条,您可以使用蓝色左右半圆图像作为行尾,蓝色矩形作为行中间,并更改日期范围内的所有按钮 (除了边界日期)没有背景图像或前景图像,并将文本颜色变为白色。边界日期视图只是获得新的背景图像。

一般来说,如果您在网格中有任何东西,那么您可以通过一些数学计算轻松地计算出屏幕坐标到网格坐标(反之亦然)。此外,如果您想制作一些精美的图形,请将整个内容分解为与屏幕上当前视图相匹配的较小部分,并将您当前的视图用作放置新视图的“锚点”。

【讨论】:

以上是关于iOS中的自定义拖动日历的主要内容,如果未能解决你的问题,请参考以下文章

我生成了一个换行的自定义Label控件,如何取得该行数啊??

C# WinForms 用鼠标拖动控件

如何设计WinForm中DataGridView控件的自定义按钮列

基于vue的自定义日历组件

Android带日程安排的自定义日历控件

UICollectionViewCell 拖动预览的自定义视图