154得票5回答
Xcode 9的安全区域

我在探索Xcode9 Beta时,在界面构建器的视图层次结构查看器中发现了“安全区域(Safe Area)”。我很好奇,并尝试了解苹果文档中关于安全区域的内容,简而言之,文档说:“这是直接与自动布局交互的视图区域。”但这并没有满足我的需求,我想知道这个新东西的实际用途。 有人有线索吗? ...

11得票4回答
绘制CIImage速度太慢

我正在创建一个需要对图像实时应用滤镜的应用程序。将 UIImage 转换为 CIImage,并应用滤镜都非常快,但是将创建的 CIImage 转换回 CGImageRef 并显示图像需要太长时间(1/5 秒,如果编辑需要实时,则实际上相当长)。 图像大约有 2500 x 2500 像素,这很...

195得票13回答
在Swift语言中的错误处理

我对Swift的了解不是很深,但有一件事情引起了我的注意,那就是Swift中没有异常。那么在Swift里如何处理错误呢?有人发现了与错误处理相关的内容吗?

7得票2回答
使用NSKeyedArchiver和Userdefault保存符合NSCoding协议的对象的结构数组

作为一个面向协议编程的概念,我使用Struct创建了我的模型。 我想把"Struct"的数组保存到Userdefault中。但是,在对该模型的数组进行编码/解码时,我遇到了问题。 这是我的模型结构: struct Room { let name : String let ...

16得票3回答
Swift中的数组map和forEach有何区别?

在 Swift 中,您可以执行以下操作:var myArray = [1,2,3,4] myArray.forEach() { print($0 * 2) } myArray.map() { print($0 * 2) } 它们都可以完成相同的功能,唯一的区别在于.map还返回一个无用的数...

7得票3回答
使用类型别名作为属性的协议

我有一个带有typealias的协议: protocol Archivable { typealias DataType func save(data: DataType, withNewName newName: String) throws func load(...

13得票4回答
2行文本的UIButton

我有一个UIButton,按钮的文本是由随机器填充的。然而我的问题是有时文本中的字符太多了,导致按钮无法显示整个文本。 是否可以检查字符的数量是否太多,然后将其余文本放到另一行?所以基本上为UIButton有两行文本而不是一行吗?

53得票6回答
SwiftUI视图位于中间而不是顶部

我正在尝试在SwiftUI中创建一个视图。在预览中,它看起来应该是对的,但是在我的iPhone上运行(或在实时预览中)它看起来是偏移的。 我尝试将padding设置为-150,但是然后TextField无法响应触摸。VStack { Text("Name:") .pa...

12得票2回答
从实物扫描并生成三维网格模型

ARKit应用程序允许我们创建 ARReferenceObject ,并使用它,我们可以可靠地识别现实世界对象的位置和方向。但是我们也可以保存完成的 .arobject 文件。 然而, ARReferenceObject 仅包含ARKit识别现实世界对象所需的空间特征信息,并不是该对象的可显...

16得票3回答
void类型的变量

我知道Void用于表示函数不接受或返回任何值。 在Swift中,Void实际上是空元组()的类型别名。 有趣的是(在Beta 6中),你甚至可以声明Void类型的变量:var x: Void println(x) x = test() func test() {} 这些语句都是合法的。pr...