在swift 2.0表视图中显示活动指示3秒

时间:2016-03-28 05:59:18

标签: ios swift uiactivityindicatorview

我在表格视图中放置了一个自定义Activity Indicator,并将其命名为:activityIndicator。我也有一个动作按钮。当我按下该按钮时,活动指示器应该显示3秒钟,然后它应该隐藏。如何在swift 2.0中做到这一点

@IBAction func RefineButtonPress(sender: AnyObject) {

}

请帮帮我!!

3 个答案:

答案 0 :(得分:3)

可以尝试单个函数实现

@IBAction func RefineButtonPress(sender: AnyObject) {

    self.activityIndicator.startAnimating()
    self.activityIndicator.hidden = false

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (Int64)(3 * NSEC_PER_SEC)), dispatch_get_main_queue()){
         self.activityIndicator.stopAnimating()
         self.activityIndicator.hidden = true

    };
}

答案 1 :(得分:2)

首先在类中创建一个名为hideActivityIndicator的方法,如下所示:

func hideActivityIndicator()
{
    activityIndi.hidden = true
}

然后在执行选择器的地方调用该方法。即按下按钮点击事件,如下所示:

self.performSelector("hideActivityIndicator", withObject: nil, afterDelay: 3.0)

答案 2 :(得分:1)

Swift 3的工作原理如下:

func hideActivityIndicator() {
    self.activityIndicator.stopAnimating()
    self.activityIndicator.isHidden = true
}

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
    self.activityIndicator.startAnimating()
    self.perform(#selector(IAPViewController.hideActivityIndicator), with: nil, afterDelay: 2.0)
}

当然,这是我需要使用它,所以修改它以满足您的需求