问题内容: 是否具有将字符串中的每个单词都大写的功能,或者这是手动过程? 例如“鲍勃高”,而我想要“鲍勃高” 当然有东西,我发现的Swift IOS答案似乎都没有涵盖。 问题答案: 你在找吗 讨论 一个字符串,其中每个单词的第一个字符均更改为其相应的大写值,而所有其余字符均设置为其相应的小写值。 和/或 使用指定的语言环境返回接收器的大写形式。 对于提供给用户的字符串,请传递当前语言环境([NSL
问题内容: 将Swift 1更新为Swift 2.0之后,我遇到了一个问题。 我在此代码的第一行收到以下错误: 无法将方法标记为@objc,因为无法在Objective-C中表示参数的类型 这个Person类: 问题答案: 您已经很好地解释了问题所在: 人不是NSObject。但是Objective-C只能看到NSObject派生的类类型。因此,您的Person类型对Objective- C不可见
问题内容: 我的目标c文件中有一个函数(比如说MyBlockExecutor类): 现在,我想从Swift调用此函数。这是我的快速电话: 这会使我的应用程序崩溃。我在这条线上收到EXC_BAD_ACCESS错误: 虽然,从Objective-C调用相同的功能非常好。另外,我将MyBlock定义为: 我该如何解决? 编辑:我对目标c函数的更改持开放态度,我只是需要以某种方式将闭包的集合从swift传
问题内容: 简单地说,我有一个存储应用程序常量的结构,如下所示: 例如,可以通过调用在Swift代码中使用这些常量。但是在我的代码中,它还包含一些Objective- C类。所以我的问题是如何在Objective-C代码中使用这些常量? 如果这种声明常量的方法不好,那么在Swift和Objective-C代码中使用全局常量的最佳方法是什么? 问题答案: 可悲的是,你不能暴露,也不是Objectiv
问题内容: 我有一个带有值的枚举,它将用于告诉将消息记录到服务器的服务器类型的API方法。我正在使用Swift 1.2,因此可以将枚举映射到Objective-C 我得到错误 @objc枚举原始类型字符串不是整数类型 我没有设法找到任何地方说只有整数可以从Swift转换为Objective-C。是这样吗 如果是这样,是否有人对在Objective- C中提供类似的最佳实践建议? 问题答案: 从Xc
问题内容: 在Swift中,当您传递值类型时,对函数说一个数组。制作了数组的副本以供该函数使用。 但是https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ClassesAndStructures.html#//apple_ref/doc/uid/TP400
问题内容: 我正在尝试将a转换为a ,然后更改格式。但是当我传递给它时会产生空白。 问题答案: 您可以从Apple Dateformatter文档中 获取详细信息。如果要为dateString设置dateformat,请参阅此链接,您可以在此处获取详细的dateformat ,例如 你得到的输出为
问题内容: 我有这个循环,在Swift 2中逐个除以一个整数。 不建议使用C样式的for循环,那么如何将其转换为Swift 3.0? 问题答案: MartinR的解决方案非常通用且有用,应该成为您工具箱的一部分。 另一种方法是重新定义您想要的内容:2的幂从7降到0。
问题内容: 在Swift 2.2中阅读Darwin库时,我发现了以下代码。 第二行中的“ @_silgen_name”是什么? 我从这里找到了以下信息,但是我想要更多详细信息,例如Apple Developer Library。 如果只是要从C调用的一组特定的Swift函数,则可以使用@_silgen_name属性覆盖改写的名称,和/或使它们成为@convention(c)以使用C调用约定。 问题
本文向大家介绍浅谈在Swift中关于函数指针的实现,包括了浅谈在Swift中关于函数指针的实现的使用技巧和注意事项,需要的朋友参考一下 Swift没有什么? 苹果工程师给我建的唯一一堵墙是:在Swift中没有任何办法获得一个函数的指针: 注意,C函数指针不会导入到Swift中(来自“Using Swift with Cocoa and Objective-C“) 但是我们怎么知道这种情况下
问题内容: 我试图在Swift中访问temp目录。在Objective-C中,我可以使用以下代码进行操作: 但是,对于将类型从Objective-C转换为Swift 或从Swift转换为类型,我有些困惑 。我应该查看任何文件吗? 谢谢。 问题答案: 怎么样: 它没有回答您有关char *的问题,但它更干净… NSFileManager参考在这里。
问题内容: 我只是将.m文件更改为.mm并使用C ++。有没有办法用Swift做同样的事情? 问题答案: 不。当您从.m切换到.mm时,您实际上是在从Objective-C切换到另一种称为Objective-C 的语言。因此,您并不是真正在使用C 。您使用的是Objective-C ,它接受大多数C 作为输入(与C 接受大多数但不是全部C作为输入的方式相同)。当我说它不是完全C 时,请考虑一个C
问题内容: Swift 2.0似乎已经从运行时错误处理的传统ObjC(返回NSError)和Swift 1.X(成功/失败可选)约定转变为类似于Java / C#/ C ++ / etc等语言中的异常处理的约定。 苹果公司传统上强调使用而不是抛出(相对于程序员错误),因为使用默认的ObjC编译器设置,展开堆栈可能会导致内存泄漏。 但是现在他们设计出了与传统例外非常相似的东西。我的问题是: 除了 命
问题内容: 我正在使用Swift 3,并且需要与C API进行交互,例如,C API接受以NULL终止的字符串列表 在Swift中,API的导入方式如下 在尝试使用类型转换数百次后,我还是无法完成这项工作。即使我传递通过编译的有效指针,它也会在运行时崩溃,提示无效的内存访问(在strlen函数中)。还是关于ARC的东西? 问题答案: 您可以像如何通过使用char **参数将Swift字符串数组传递
问题内容: 在Objective-C中,我们可以知道是否正在使用宏为设备或模拟器构建应用程序: 这些是编译时宏,在运行时不可用。 如何在Swift中实现相同目标? 问题答案: 尽管此答案可能有效,但建议进行静态检查的解决方案(如几位Apple工程师所阐明的那样)是定义一个针对iOS模拟器的自定义编译器标志。 原始答案 如果您需要静态检查(例如不需要运行时if/else),则无法直接检测到模拟器,但