如何创建可从viewcontroller访问的函数?

时间:2016-07-21 09:16:46

标签: ios swift

我想定义一个方法来显示和隐藏我的应用程序中的进度条。但是,我不想在每个视图控制器中为这些方法创建本地方法。如何定义将视图作为参数并使用它们执行某些操作的全局方法。

以下是我的尝试:

EditText

2 个答案:

答案 0 :(得分:0)

使用UIViewController继承一个BaseViewController类

现在在BaseViewController中创建方法

func show() {
let loadingNotification = MBProgressHUD.showHUDAddedTo(view, animated: true)
    loadingNotification.color = UIColor.blueColor()
    loadingNotification.mode = MBProgressHUDMode.Indeterminate
    loadingNotification.labelText = MyConstants.LOADING_TEXT
}   

func hide(){
    MBProgressHUD.hideAllHUDsForView(view, animated: true)
}

现在将此BaseViewController继承到您想要显示进度条的ViewController,然后只需调用 self.show() self.hide()

答案 1 :(得分:0)

删除let view = UIView(),不需要。 并将参数添加到方法中:

func show(view: UIView) {

    let loadingNotification = MBProgressHUD.showHUDAddedTo(view, animated: true)
    loadingNotification.color = UIColor.blueColor()
    loadingNotification.mode = MBProgressHUDMode.Indeterminate
    loadingNotification.labelText = MyConstants.LOADING_TEXT
}