iOS 和 Objective-C:每季度重复一次活动

2024-01-02

我需要每个“季度”重复一次活动(我认为这意味着大约提前 3 个月)。所以我可以预期这会移动日期(但事实并非如此):

    NSDateComponents *component = [[NSDateComponents alloc] init]; // quarter
    component.quarter = 1;

    self.todoStartDate = [[NSCalendar currentCalendar] dateByAddingComponents: component toDate:self.todoStartDate options: 0];

在日期中添加“季度”有什么问题吗?添加一天或一周时效果很好,但添加“季度”时则不然。


(我希望我可以将其添加为 applefreak 答案的格式化评论,这是一个非常好的答案。但是 SO 不允许在评论中进行标记。)

Apple 的 NSCalendar 文档 http://developer.apple.com/library/IOs/#documentation/Cocoa/Reference/Foundation/Classes/NSCalendar_Class/Reference/NSCalendar.html says:

此 API 代表的某些日历可能必须映射其基本日历 单位概念转化为年/月/周/日/……命名法。例如,一个 日历由一年中的 4 个季度而不是 12 个月组成 代表季度的月份单位。

现在,这可能更清楚了,但我think苹果的意思是,普通日历根本没有“季度”;他们只有年、月(共 12 个)和日。但你可以子类化NSCalendar(或者创建一个新实例NSCalendar?)这样一年只有 4 个月,然后将这些月份称为“季度”,并且为了此类子类的利益,Apple 预先定义了quarter财产。这实在是太令人困惑了;我敢打赌,苹果 WTFery 背后一定有一个好故事。

不管怎样,我同意 applefreak 的观点,无论如何你应该处理年/月/日日期,而不是胡乱处理神话般的“季度”。毕竟,那又怎样呢?mean假设第三季度比第一季度短,那么“添加”到 3 月 31 日还有两个季度? (答案是否取决于今年是否是闰年?)

如果你真正想要的是“每年 1 月 1 日、4 月 1 日、7 月 1 日和 10 月 1 日重复发生的事件”,那么你应该写that。甚至不必费心“增加三个月”,这与“增加四分之一”有同样的问题。

顺便说一句,这里的其他人已经注意到quarterWTF也是如此。例如:我想在 NSDateComponents 类中获得四分之一的值 https://stackoverflow.com/questions/11618784/i-want-to-get-a-quarter-value-in-nsdatecomponents-class

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS 和 Objective-C:每季度重复一次活动 的相关文章

  • AVCaptureDevice 找不到任何设备

    这行代码是我今天遇到的问题 macOS 应用程序 NSArray devices AVCaptureDevice devicesWithMediaType AVMediaTypeVideo 我更新Xcode后 系统总是让我空着devices
  • 添加/删除带有动画的 UITableViewCell?

    我知道这听起来像是一个愚蠢的问题 但我到处都看过 我怎样才能做到这一点 我知道如何使用 swype to delete 方法来执行此操作 但是我如何在该函数之外执行此操作 请发布一些代码示例 Thanks Coulton self tabl
  • 如何用图片替换UITableView?

    我有一个 UITableView 默认为空白 直到用户编辑并向其添加数据 我想显示一张带有说明的图像 直到用户编辑它为止 图片的大小非常适合导航栏和标签栏之间 有没有办法以编程方式执行此操作 您可以使用removeFromSuperview
  • iphone NSDate 转换问题

    在我的 facebook 图表 Api 中 我正在获取这些数据 来自杰森 updated time 2011 05 17T14 52 16 0000 我正在使用此代码将其转换为有效的日期格式 NSDateFormatter df NSDat
  • 频繁绘制 CGPath 时的性能

    我正在开发一个将数据可视化为折线图的 iOS 应用程序 该图被绘制为CGPath在全屏自定义中UIView最多包含 320 个数据点 数据经常更新 图表需要相应地重新绘制 刷新率为 10 秒就很好了 到目前为止很容易 然而 我的方法似乎需要
  • 在 UIImage 顶部绘制透明圆圈 - iPhone SDK

    我在尝试找出如何在 UIImageView 中的 UIImage 顶部绘制透明圆圈时遇到了很多麻烦 谷歌给了我线索 但我仍然找不到有效的例子 有没有人知道的例子可以证明这一点 最简单的方法就是创建一个半透明的方形 UIView 然后将其图层
  • 如何使 for 循环以与 NSLog(@"%@", arrData) 相同的顺序迭代

    我执行了以下代码NSLog arrData 调试器中的输出预计如下所示 0 first name John 1 first name Florence 2 first name Melinda 3 first name Zack 然后我执行
  • 在 swrevealcontroller 之前实现登录屏幕

    我刚刚开始学习 IOS 开发 我已经按照给定的在线教程成功实现了 SWRevealViewController 一切都按预期工作 然后 我决定添加一个登录屏幕 这将是应用程序运行时用户看到的第一个页面 我采取的步骤如下 将 UIViewCo
  • Objective-C中如何使继承的类能够看到父类的隐藏方法[重复]

    这个问题在这里已经有答案了 我有两个类 Class1 和 Class2 第二个类继承自第一个类 我需要重写 Class1 的 update 方法来实现我的目标 继承方法中 update方法的改变是在代码中间进行的 所以我不能使用 超级更新
  • CBPeripheral 名称有时为 null

    我正在开发一个应用程序来与蓝牙 LE 外围设备进行通信 我目前正在测试的外围设备是其中之一these http www ti com tool cc2540dk mini 有趣的是 有时当我发现它时 我会得到它的正确名称 SimpleBLE
  • ViewWillAppear 没有被 UISplitViewController 调用

    背景和目标 我有一个基于 UISplitViewController 的 iPad 应用程序 到目前为止它支持 4 个方向 但现在我想将其锁定为仅横向 我变了shouldAutorotateToInterfaceOrientation左视图
  • 为什么使用[ClassName alloc]而不是[[self class] alloc]?

    我正在读马克 达尔林普尔 Mark Dalrymple 的著作在 Mac 上学习 Objective C 仅在协议章节 所以仍然相对较新 并试图弄清楚一些事情 为什么要通过类自己的名称来引用它 如果我有一个叫做Foo 为什么我会想写 比如说
  • NSURL URLWithString:引发异常

    简而言之 NSURL URLWithString 似乎引发了一个例外 根据文档 如果字符串格式错误 则返回 nil 没有提到在任何情况下都会引发异常 除此之外 我还对 URL 进行编码并检查nil在将字符串转换为 URL 之前 任何人都可以
  • GMSMapView 中的倒多边形

    我必须在我的 iPhone 项目中使用 Google 地图 并且我正在使用 GMSPolygon 来绘制多边形 但是如何填充地图上除多边形内部之外的所有位置 就像下图一样 谢谢 我玩过你的问题 主要思想是用多边形填充整个地球 然后为您的特定
  • 使用超类初始化器初始化类

    我有两个类 一个是另一个的子类 比如说Animal and Dog 超类有一些初始化器 比如initAnimal 子类有一些初始化器 比如initDog 问题是 从编译器的角度来看 做类似的事情是完全合法的Dog adog Dog allo
  • 为什么 Xcode 4 不会对我未完整实现 UITableViewDataSource 协议发出警告?

    如果我在 Xcode 中使用以下代码声明并不完全实现我自己的协议 一些协议 h protocol SomeProtocol
  • 如何检测Retina高清显示屏?

    UIScreen有一个新的 nativeScaleiOS 8 中的属性 但文档没有提及它 property nonatomic readonly CGFloat nativeScale 还有一个scale属性 但文档说它是 2 用于视网膜显
  • Objective C UIImagePNGRepresentation内存问题(使用ARC)

    我有一个基于 ARC 的应用程序 它从 Web 服务加载大约 2 000 个相当大 1 4MB 的 Base64 编码图像 它将 Base64 解码后的字符串转换为 png图像文件并将其保存到磁盘 这一切都是在一个循环中完成的 我不应该有任
  • 使用 Storyboard 时获取 NSManagedObjectContext

    目标是获取当前的 NSManagedObjectContext 以便使用 Core Data 在 iOS 4 3 中 我将 UINavigationController 的委托设置为 AppDelegate 如下所示 在 AppDelega
  • 将 CALayer 旋转 90 度?

    如何旋转CALayer90度 我需要旋转所有内容 包括子图层和坐标系 Obj C theLayer transform CATransform3DMakeRotation 90 0 180 0 M PI 0 0 0 0 1 0 Swift

随机推荐

  • 自动实现的属性必须定义 get 和 set 访问器

    SQLCLR Visual Studio 2015 我是编写 CLR 代码的新手 编译 SQL CLR 函数时出现以下错误 我正在使用 Net 坐标库 https www doogal co uk dotnetcoords php 有问题的
  • 从字符串动态导入文件中的方法

    我有一个字符串 说 abc def ghi jkl myfile mymethod 如何动态导入mymethod 以下是我的做法 def get method from file full path if len full path 1 r
  • 将handlebars变量传递给客户端js文件

    我正在使用 Node js Express Handbars 构建一个应用程序 并正在寻找一种可以将车把数据从服务器传递到客户端 JavaScript 文件的方法 例如 server js var person name George ag
  • C 语言有哪些 XML API?

    它们都这么复杂吗 http msdn microsoft com en us library ms766497 VS 85 aspx http msdn microsoft com en us library ms766497 VS 85
  • 计算机多久会犯一次错误?

    我指的不是编程错误 这些错误实际上是由人类以某种方式造成的 而是在执行像将两个数字相加这样简单的操作时出现的错误 1 x 中预期出现错误的 x 范围是多少 就 CPU 而言 存在三种可能的错误来源 这些错误似乎在您的问题范围内 浮点舍入错误
  • 如何管理 ASP.NET 中触发事件的顺序?

    这个问题看似微不足道 但我没有通过谷歌找到答案 如果我在网络表单中有多个独立的控件 例如DropDownLists 和网格 我需要在另一个事件处理程序中使用来自一个事件处理程序的回发信息 因此我需要让它一次又一次地正确触发 我看到很多间接的
  • 针对多个 Web 请求的最佳多线程方法

    我想创建一个程序来爬行并检查我的网站是否有 http 错误和其他内容 我想使用多个线程来执行此操作 这些线程应该接受要抓取的 url 等参数 虽然我希望 X 线程处于活动状态 但仍有 Y 任务正在等待执行 现在我想知道执行此操作的最佳策略是
  • 为什么使用存储库模式或者请向我解释一下?

    我正在学习存储库模式并正在阅读使用 Entity Framework 4 1 和 Code First 的存储库模式 http www codeproject com Tips 309753 Repository Pattern with
  • 我们声明结构体的两种方式有什么区别?

    作为 C 的初学者 我正在学习链表和其他数据结构 在网上查看了一些实现之后 我发现了他们定义结构的两种方式 两者有什么区别 在一种情况下 我们在下一个指针之前添加 struct 而在另一种情况下我们没有 Way 1 struct node
  • 如何使用Jquery检索wordpress的ajax搜索结果

    我需要设置 wordpress ajax 搜索结果 但我的方法在单击按钮时不会检索结果 而是将我重定向到另一个网站 myurl com s term 我正确调用了 admin ajax php 但设置不正确 有什么想法导致问题吗 Scrip
  • 无法使用 Cypress.io 测试页脚的背景颜色,它会抛出错误

    无法使用 Cypress io 测试背景颜色 在运行 cypress 测试时会抛出以下错误 CypressError 重试超时 actual equals 不是函数 通过安装的 chai colorsnpm install chai col
  • Frontpage 服务器扩展安装问题

    这是我的故事的前言 https stackoverflow com questions 5856880 vs unable to create website found 我的 VS 或 IIS 有问题 我不知道 在 Visual Stud
  • 文本区域占位符不起作用

    我编写了下面的文本区域代码 但占位符不起作用 我在文本区域框中看不到占位符
  • 有没有办法以编程方式确定 Apple 内置控件的正确尺寸?

    在编写 Cocoa 应用程序时 我以编程方式完成大部分用户界面布局 例如 NSRect popUpFrame NSMakeRect 10 10 100 kDefaultPopUpButtonHeight NSPopUpButton popU
  • 现代 GPU 上制服的分支成本

    在现代 GL3 3 GPU 上使用 GLSL 时 在统一上进行分支的可能成本是多少 在我的引擎中 我已经达到了拥有大量着色器的程度 我为其中的很多预设了几种不同的质量预设 就目前情况而言 我在着色器中使用带有 if 的制服来选择不同的质量预
  • 如何使用 Numba 加速 Python 中 scipy.sparse.linalg 中提供的稀疏线性系统求解器?

    我希望使用 Numba 加速我的代码的稀疏系统求解器部分 这是我到目前为止所拥有的 Both numba and numba scipy packages are installed I am using PyCharm IDE impor
  • C++中WIN32和_WIN32定义有什么区别

    我知道WIN32表示 win32 编译但是什么是 WIN32用于 详细说明一下 Neil Butterworth 和 blue tuxedo 已经给出了正确答案 WIN32由SDK或构建环境定义 因此不使用实现保留的命名空间 WIN32定义
  • iOS UIWebView 中的客户端证书身份验证

    我是 Objective C 的新手 但我正在开发一个应用程序 它有一个 UIWebView 可以加载一些网页内容 所有网页都需要客户端证书进行身份验证 我在露水的日子里一直在努力解决这个问题 有谁知道如何在 UIWebView 中实现它的
  • ASP.NET Web API 和 OpenID Connect:如何从授权代码获取访问令牌

    我尝试让 OpenID Connect 运行 我的 Web API 的用户设法获取 OpenID Connect 提供商的授权代码 我应该如何将此代码传递到我的 ASP NET Web API 我必须如何配置 OWIN 中间件才能使用授权代
  • iOS 和 Objective-C:每季度重复一次活动

    我需要每个 季度 重复一次活动 我认为这意味着大约提前 3 个月 所以我可以预期这会移动日期 但事实并非如此 NSDateComponents component NSDateComponents alloc init quarter co