如何在 Swift 中调用 Objective C UIView 的 initWithFrame

Posted

技术标签:

【中文标题】如何在 Swift 中调用 Objective C UIView 的 initWithFrame【英文标题】:How to Call initWithFrame of Objective C UIView in Swift 【发布时间】:2015-06-17 00:24:38 【问题描述】:

这就是我在 Obejective C 中调用 UIView DraggableViewBackground 的方式,它工作得很好,但是如何在 Swift 中做同样的事情

 DraggableViewBackground *draggableBackgroundforurl = [[DraggableViewBackground alloc]initWithFrame:self.view.frame];

我的 DraggableViewBackground 在 Objective C 中 我想将其设置为单击按钮时的子视图

【问题讨论】:

【参考方案1】:
let draggableBackgroundforurl = DraggableViewBackground(frame: self.view.frame);

这应该可以解决问题。

您可以查看letvar 之间的区别,以确定在这种情况下最适合您的需求。 let 不能改变,var 可以。

【讨论】:

谢谢你的帮助,如果 initwithframe 有额外的参数,你能告诉我怎么办 这样的东西 DraggableViewBackground(frame: self.view.frame, param1: something, param2: somethingElse)【参考方案2】:

来自UIView docs。只需使用普通的 swift 初始化程序即可。

【讨论】:

请您添加一个示例(纯理论是不够的)。

以上是关于如何在 Swift 中调用 Objective C UIView 的 initWithFrame的主要内容,如果未能解决你的问题,请参考以下文章

从 Swift 调用 Objective C 和 C 传递回调函数

从 Objective C 调用 Swift 中定义的 NSString 扩展

如何在 SWIFT(不是 Objective C)中设置 CGPDFOperatorTableSetCallback [关闭]

在 C/C++ 中使用 swift 库?

如何在 Swift 中调用 Objective-C 类别方法

从 Objective C 类调用 Swift 方法