小编Nik*_*nov的帖子

如何实现与Swift中的strongify相同的行为?

我有一个弱自我的闭包,我需要确保在执行闭包期间保留self,并在执行完成后通过闭包释放.以前它是由@strongify完成的.在Swift中还有其他方法吗?

memory-management swift

15
推荐指数
3
解决办法
4148
查看次数

iOS Playgrounds是否支持UIView动画?

是否可以使用Playground中的animateWithDuration预览为UIView完成的动画?我在UIView初始化之后立即添加了XCPShowView,并且无论我选择在时间轴上的什么位置,它都会显示它处于最终状态的所有内容.

uikit ios swift-playground

14
推荐指数
2
解决办法
3885
查看次数

为什么Swift需要覆盖泛型超类的指定初始化器?

根据Apple的文档,Swift不需要覆盖初始化程序.在以下代码示例中,Bar继承了以下的初始化程序Foo:

class Foo {
  let value: Int
  init(value: Int = 5) {
    self.value = value
  }
}

class Bar: Foo {
}
Run Code Online (Sandbox Code Playgroud)

只要我们Fooclass Foo<T> {Xcode中添加一些通用就会给我们带来错误Initializer does not override a designated initializer from its superclass.是否有文件或快速进化讨论解释了为什么会发生这种情况?


更新.通用似乎不是覆盖要求的主要原因.以下是如何定义具有泛型的类的选项,该类不需要覆盖指定的初始化程序:

protocol FooProtocol {
    associatedtype T
}

class Foo<U>: FooProtocol {
    typealias T = U

    let value: Int
    init(value: Int, otherValue: T) {
        self.value = value
        self.otherValue = otherValue
    }
}

class Bar: Foo<Int> { …
Run Code Online (Sandbox Code Playgroud)

generics compiler-errors initializer swift

9
推荐指数
1
解决办法
252
查看次数

在故事板中使用UIPageViewController

有没有办法在没有编写代码的情况下为故事板中的UIPageViewController配置数据源,委托和查看控制器?我确实在UIPageViewController中看到了数据源和委托的出口,但没有办法在场景之间进行连接,也无法在同一场景中添加额外的控制器.

如果IBS中的UIPageViewController根本无法配置,那么在Interface Builder中使用UIPageViewController的目的是什么?

iphone storyboard ios uipageviewcontroller

5
推荐指数
1
解决办法
3536
查看次数

如何编译和链接其他源代码而不将其显式包含到项目中?

我有一个工具可以在运行脚本部分的构建阶段生成额外的源代码。我想将本节的结果文件包含在编译和链接中。怎么可能呢?我知道可以在附加运行脚本部分编写 clang 调用,但我正在寻找替代选项,因为将运行脚本部分与 clang 和项目编译器设置保持同步会太复杂。

我生成的文件是一组当前包含在项目中的类的类别。我不需要担心将类别导入到项目中,因为所有自动生成的代码都会导入到 generate-categories.h 中,该文件默认导入到预编译头文件中。

xcode clang

2
推荐指数
1
解决办法
2253
查看次数