self.view.addSubview 和 view.addSubview 的区别

Posted

技术标签:

【中文标题】self.view.addSubview 和 view.addSubview 的区别【英文标题】:Difference between self.view.addSubview and view.addSubview 【发布时间】:2015-01-03 06:56:09 【问题描述】:

我已经用 swift 编写了一堆代码,并且更喜欢以编程方式完成很多工作,我想知道这两者之间有什么区别:

self.view.addSubview(someNewView)
view.addSubview(someNewView)

它们似乎都有效。出于某种原因更好吗?它们真的有那么不同吗?

如果这是一个愚蠢的问题或已经回答,可以将其删除。只是一个想法。

【问题讨论】:

没有区别。它们都是一样的。 【参考方案1】:

没有真正的区别,尽管您可能会看到以前的 Objective-C 开发人员更频繁地使用 self。来自文档:

在实践中,您不需要经常在代码中编写 self。如果 你没有明确写自我,Swift 假设你指的是 每当您使用 方法中的已知属性或方法名称。

...

当实例方法的参数名称与该实例的属性名称相同时,会出现此规则的主要例外情况。在这种情况下,参数名称优先,因此有必要以更合格的方式引用属性。

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Methods.html

【讨论】:

太棒了,这就是我的想法。谢谢您的帮助。我几乎一直没有把自己放在那里。

以上是关于self.view.addSubview 和 view.addSubview 的区别的主要内容,如果未能解决你的问题,请参考以下文章

self.view = mainView vs self.view.addSubview(mainView)关于角半径

调用 [self.view addSubview:self.overlayView] 后 ScrollView 重置其位置的问题;

Swift - UISlider

足以从超级视图中删除视图?

在 UIScrollView 中看不到按钮

SceneKit NSNode 拆分部分