首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止取消模态WKInterfaceController

防止取消模态WKInterfaceController
EN

Stack Overflow用户
提问于 2016-03-18 13:50:37
回答 3查看 1.7K关注 0票数 1

是否有办法防止用户取消模态控制器?

我认为,在要求用户打开iPhone应用程序或在其中执行某些操作时,想要“阻止”主Watch应用程序界面是很常见的。

我目前的解决方案是,当控制器被解雇时再次出现,但它很笨重。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-03-18 16:54:35

您不能阻止模态接口控制器被取消,因为系统会在标题被点击时自动取消它。

因为您的代码没有被问到它是否应该发生,而只是知道它正在发生,所以无法拦截或取消该操作。WKInterfaceController文档简要地谈到了这一点。

当用户点击标题字符串时,WatchKit会自动取消模态接口,而无需采取任何进一步的操作。

你能做什么?

当你不知道何时点击取消标题的时候,有“隐藏”取消标题的黑客

这可能会使用户感到困惑,他们可能想知道如何取消该模式,或者误导其他人认为该模式不能被取消。

推荐什么?

规避人机界面指南可能会降低整个用户体验。

模态表的左上角保留给关闭按钮,关闭界面。

一些用户可能会感到沮丧或恼怒,如果

  • 没有明显的方法来取消,或
  • 这种模式在反复被取消后再次出现。

由于用户希望能够取消该模式,也许您可以允许他们这样做,然后只需在呈现接口控制器中显示某种形式的提醒(以登录或启用权限)。

票数 0
EN

Stack Overflow用户

发布于 2018-10-04 07:00:25

有一种使用reloadRootControllers解决这个问题的简单方法。当您使用您在故事板中命名的reloadRootControllers(withNamesAndContexts:)名称调用WKInterfaceController时,它的效果类似于以模式方式呈现该控制器。但是,由于它现在是控制器,所以它没有取消按钮。我不太喜欢这个,但它确实能完成任务。

注意,自从watchOS 4. reloadRootControllers上的苹果文档(withNamesAndContexts:)之后,就不再推荐这种方法了。

票数 2
EN

Stack Overflow用户

发布于 2021-01-18 05:35:41

诀窍是使模态屏幕全屏化,并更改主组的内嵌顶部值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36086152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档