ios - 我在哪里放置 iOS 8 + Swift 中的常用实用程序函数

标签 ios swift ios8 xcode6

我有以下方法(例如),我希望能够从 iOS + Swift 项目中的任何 ViewController 使用:

func initializeBlurEffectOnGivenUIView(UIViewToBeBlurred: UIView) {

    let UIViewToBeBlurredHeight = UIViewToBeBlurred.frame.size.height
    let UIViewToBeBlurredWidth = UIViewToBeBlurred.frame.size.width
    let UIViewToBeBlurredX = UIViewToBeBlurred.frame.origin.x
    let UIViewToBeBlurredY = UIViewToBeBlurred.frame.origin.y

    let blurEffect:UIBlurEffect = UIBlurEffect(style: UIBlurEffectStyle.Light)
    let vibrancyEffect = UIVibrancyEffect(forBlurEffect: blurEffect)

    let vibrancyEffectView = UIVisualEffectView(effect: vibrancyEffect)
    let blurEffectView:UIVisualEffectView = UIVisualEffectView(effect: blurEffect)
    blurEffectView.frame = CGRectMake(UIViewToBeBlurredX, UIViewToBeBlurredY, UIViewToBeBlurredWidth, UIViewToBeBlurredHeight)
    blurEffectView.contentView.addSubview(vibrancyEffectView)

    UIViewToBeBlurred.addSubview(blurEffectView)
}

我有更多的常用助手,例如我也想提供的助手。如何构建应用程序以实现此目的?

最佳答案

如果函数是一个自由全局函数,将函数放在任何文件的顶层。 (只是不要不小心重复自己并将相同的函数放在所有文件的顶层。)例如,这就是我对我在这里描述的 delay 实用函数所做的:dispatch_after - GCD in swift?

但是,在您给出的示例的特定情况下,我可能会将其放在 UIView 的扩展中。我将其重写为实例方法,这样我们就不会模糊另一个 View ,而是从现有 View 开始并模糊 self

关于ios - 我在哪里放置 iOS 8 + Swift 中的常用实用程序函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27462110/

相关文章:

ios - 新建的WebRTC.framwork(iOS)缺少RTCAudioSession.h等文件

iOS11 UIBarButtonItem 操作未被调用

IOS8 手电筒在黑暗时打开,尽管设置了 AVCaptureTorchModeOff

ios8 - 如何摆脱 Assets 目录编译器警告 "app icon is required for apps ... targeting iOS 7.0 ..."

ios - 如何本地化今天的扩展小部件?

ios - iOS 中的 IKImageBrowserView?

swift - 如何从 firebase 标题文件夹 Xcode 文件 TableView

swift - Spritekit SKShapeNode 随机缩放,Swift

ios - 在以模态方式呈现的 UIViewController 中使用 UITableView 时出现奇怪的行为

uinavigationcontroller - iOS8 UINavigationController 推送/弹出透明 UIView 问题