iOS 中的活动指示器应阻止用户访问其他 UI 元素,直到其停止动画

发布于 2024-10-19 14:15:25 字数 220 浏览 6 评论 0原文

我的 ActivityIndi​​cator 在正确的时间出现,但用户仍然可以在处理发生时按下视图上的按钮。我使用 ActivityIndi​​cator 的原因是为了防止这种使用。 如何确保在 ActivityIndi​​cator 动画期间,不可能进行任何 UI 交互? 另外,我希望当前视图仍然显示给用户(就像我不喜欢 UIActivityIndi​​cator 的不透明视图 - 如果可能的话 - 除非这是唯一的选择)

My ActivityIndicator comes up at the right time but the user can still press the buttons on the view while processing is occurring. The reason I'm using ActivityIndicator is to prevent such usage.
How do I make sure that during the animation of ActivityIndicator, no UI interaction is possible?
Also, I would prefer that the current view is still displayed to the user(as in I wouldn't prefer having an opaque view of UIActivityIndicator-if that's possible-unless that's the only option)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

谁的年少不轻狂 2024-10-26 14:15:26

查看 DSActivityView。它是一个一次性的单例,可以非常轻松地建立模态活动视图。

将其包含在视图控制器中,然后在启动长时间运行的后台进程之前,您可以:

[DSBezelActivityView activityViewForView:self.view];

然后当您完成并想要停用它时,您可以:

[DSBezelActivityView removeViewAnimated:YES];

许多配置选项,包括放置自定义消息的能力在活动视图中...这是一个很棒的小图书馆,我一直在使用。

Check out DSActivityView. It's a one-shot singleton that puts up a modal activity view VERY easily.

Include it in a View Controller, and then before you fire a long-running background process, you go:

[DSBezelActivityView activityViewForView:self.view];

And then when you're done and want to retire it, you go:

[DSBezelActivityView removeViewAnimated:YES];

Lots of configuration options, including the ability to put custom messages in the activity view... It's a great little library that I use ALL the time.

清引 2024-10-26 14:15:26

ActivityIndi​​cator 的工作是像名称一样表明某些事情正在发生,而不是禁用所有交互...您应该是这样做的人...您可以尝试将 userInteractionEnabled 属性设置为 NO。

一切完成后将其设置回 YES

ActivityIndicator's job is to like names says indicate that something goes on, and not to disable all interactions...You should be the one to do that...you could try with setting userInteractionEnabled property to NO.

When everything is finished set it back to YES

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文