隐藏活动指示器

Posted

技术标签:

【中文标题】隐藏活动指示器【英文标题】:Hide activity indicator 【发布时间】:2015-03-04 21:47:03 【问题描述】:

在我的主情节提要上,我创建了一个活动指示器。

我想在按下按钮之前隐藏我的活动指示器。 有什么办法可以做到吗?

当我按下按钮时,活动指示器开始动画。

self.indicator.hidden = NO;
[self.indicator startAnimating];
[self performSelector:@selector(showData) withObject:nil afterDelay:2.0f];

我可以在按下按钮之前,然后再显示此活动指示器吗?

【问题讨论】:

如果你愿意,你可以选择任何一个答案作为正确的答案。 【参考方案1】:

在 Storyboard 中选择活动指示器,然后选择属性“停止时隐藏”。这样您就不必隐藏它,只需启动或停止动画,Activity Indicator 就会自动显示和隐藏。当然,您仍然需要将启动和停止动画的代码添加到按钮中。

【讨论】:

【参考方案2】:

Swift 3 Xcode 8.3.2

首先在 viewDidLoad() 方法中隐藏你的 activityIndi​​cator 并将 hidesWhenStopped 属性设置为 true。

override func viewDidLoad()
     super.viewDidLoad()
     self.activityIndicator.isHidden = true
     self.activityIndicator.hidesWhenStopped = true

稍后当你想显示 activityIndi​​cator 时:

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

当你想停止它时,请使用:

self.activityIndicator.stopAnimating()

【讨论】:

【参考方案3】:

是的,您可以在 Storyboard 中选择 Hidden 属性,并在您点击它时在您的按钮操作方法中更改它。但是您可以只选择“停止时隐藏”,如果没有动画,您的活动将被隐藏,否则会显示。

【讨论】:

【参考方案4】:

你可以添加

self.indicator.hidden = YES;

到您的 UIViewController 的 viewDidLoad 方法或在 Storyboard 中选择隐藏复选标记。

【讨论】:

【参考方案5】:

如果您使用的是 swift,那么您可以在设置指标的出口时执行此操作,例如-

@IBOutlet weak var indicator:UIActivityIndicatorView!
     didSet
          indicator.hidesWhenStopped = true
     

基本上它的意思是,在我的活动指示器插座建立时将其 hidesWhenStopped 属性设置为 true。

【讨论】:

以上是关于隐藏活动指示器的主要内容,如果未能解决你的问题,请参考以下文章

在状态栏中隐藏活动指示器[重复]

加载网页时,活动指示器不会隐藏

SFSafariViewController 在推入 UINavigationController 时隐藏网络活动指示器

如何隐藏和显示加载微调器 - 活动指示器反应原生,管理道具和状态

无法在 API 调用结束时隐藏活动指示器

在 UICollectionView 页脚中显示活动指示器