相关疑难解决方法(0)

为什么UITextField的文本属性在Swift 2中更改为可选?

根据UIKit diff文档,在ios9/Swift 2中

var text: String! 已经成为 var text: String?

根据UITextField文档,它特别说

This string is @"" by default.

我不明白这种改变的目的.如果文本字段完全存在,那么该属性是否应始终为空字符串?该字段在什么时候返回一个空字符串?一旦用户与之交互?一旦它被添加到视图层次结构中?它在什么时候返回nil

如果文本字段首先存在,是否始终可以假设文本属性也存在?这似乎只是它会导致大量的查找/替换.text.text!

我没有看到文档中提到它的位置,所以也许有人有一些背景故事或帮助解释为什么会改变.

uitextfield uikit ios swift swift2

43
推荐指数
3
解决办法
9873
查看次数

在Swift中,Int有一个带String的隐藏初始化器吗?

我试着看看用于Int的Swift API,我仍然不确定为什么这样做:

var foo = Int("100")
Run Code Online (Sandbox Code Playgroud)

我在文档中看到以下初始化器:

init()
init(_: Builtin.Word)
init(_: Double)
init(_: Float)
init(_: Int)
init(_: Int16)
init(_: Int32)
init(_: Int64)
init(_: Int8)
init(_: UInt)
init(_: UInt16)
init(_: UInt32)
init(_: UInt64)
init(_: UInt8)
init(_:radix:)
init(_builtinIntegerLiteral:)
init(bigEndian:)
init(bitPattern:)
init(integerLiteral:)
init(littleEndian:)
init(truncatingBitPattern: Int64)
init(truncatingBitPattern: UInt64)
Run Code Online (Sandbox Code Playgroud)

但我没有看到init(_: String)上面的内容.引擎盖下是否有一些自动化?

swift

6
推荐指数
1
解决办法
1607
查看次数

标签 统计

swift ×2

ios ×1

swift2 ×1

uikit ×1

uitextfield ×1