问题标签 [wkinterfacecontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
46 浏览

accessibility - 如何为 VoiceOver AccessibilityLabel 设置 Apple Watch 标题

有什么方法可以更改 WKInterfaceController 标题的 AccessibilityLabel 吗?

或者只关闭标题旁白?

我已将标题缩短为 X|Y 以向用户显示他们正在查看的内容,但这对于使用 VoiceOver 的人来说不是很友好,因为当它应该被关闭或阅读“项目 X 的​​”时,它显示为“X bar Y”是"

我现在正在做一个 hack 来检查 VoiceOver 并设置标题,但这显然不会在有限尺寸的 Apple Watch 屏幕上很好地显示:

有什么可以帮助视障人士的想法吗?

谢谢

0 投票
1 回答
263 浏览

watchkit - watchOS 应用程序在显示睡眠后重置为根视图控制器

我正在为 watchOS 应用程序实现一个简单的分层接口,用于pushController(withName: String, context: Any?)将视图添加到堆栈中。当尝试在 watchOS 3 设备上进行测试时,我的应用程序将在“睡眠”事件之后将自身重置回根视图控制器,从而失去导航状态。

这是预期的行为吗?如果应用程序从内存中清除,我希望导航状态会重置,但不会在屏幕进入睡眠状态后重置。

0 投票
1 回答
384 浏览

watchkit - 如何从 WatchOS 3 中的自定义通知操作中打开特定的视图控制器

我正在开发一个WatchOS3应用程序,用户可以在其中接收带有自定义操作的本地通知。用户可以在通知上调用 2 个自定义操作,即选项 1 和选项 2。用户点击任一选项后,应用程序应启动到特定视图。

到目前为止,通知操作已在以下函数中正确处理ExtenionsDelegate

这是我的主要代码InterfaceController,其中定义了通知类别:

现在,当点击 option1 或 option2 时,如何告诉我的应用程序启动到特定视图?

0 投票
1 回答
137 浏览

swift - 按顺序观看 OS Swift Table 加载数据

Watch OS 3/Xcode 8 允许独立的手表应用程序。有人可以提供最好的 Swift 数组/方法,以便从接口控制器按顺序将数据加载到 storbyboard 中的表中,并在每次显示后更新。

我的代码现在只选择第一个值并显示在表格中,使用后不会移动到表格列表中的下一个值。

0 投票
1 回答
604 浏览

swift - 如何将数据传回 Watchkit 中的接口控制器

我知道这个问题被问了很多,但似乎没有人给出正确的答案。

我有一个有表的接口控制器。现在,当用户选择一行时,我将信息推送到新的界面控制器self.pushController(withName: "DetailInterfaceController", context: context)。现在在新的 DetailInterfaceController 中,我可以很容易地访问我的上下文awake(withContext context: Any?)。到目前为止,一切都很好。用户应该更改上下文中的某些内容,然后将上下文发送回之前的接口控制器。我使用委托模式来做到这一点。我以为我可以像在 ios 中一样使用它。但是我遇到了代表的问题。我找不到设置委托的方法。Watchkit 不允许您只创建接口控制器的实例(我通常在 ios 中这样做的方式)。

我试过了:

https://makeapppie.com/2015/05/29/swift-watchkit-introducing-navigation-to-the-apple-watchpart-4-dismissals-and-segues/

和这个:

http://koreyhinton.com/blog/watchkit-delegates-and-contexts.html

但我有一个来自编译器的错误,我不能向下转换我的上下文。

我简直不敢相信手表套件中没有办法设置代表!这似乎很荒谬。我在 ios 中经常使用委托模式。

有人可以告诉我一种可以做到这一点的方法吗?或者它根本无法在 Watchkit 中完成?

0 投票
1 回答
36 浏览

watchos-3 - WatchOS 3 在界面之间共享信息和操作

我的主手表界面上有一张桌子。用户选择后,第二个界面将显示并显示有关用户选择项目的更多详细信息。

我正在考虑向第二个界面添加一个按钮,因此当用户单击此按钮时,手表将通过 WatchConnectivity 将所选项目的信息发送到配对 iPhone。

问题是第二个界面上的这个按钮单击事件如何触发第一个主界面上的 WCSession 动作?

谢谢!保罗

0 投票
2 回答
963 浏览

swift - 为什么我不能在 Apple Watch 的接口控制器之间发送数据?

基本上,我想做的是从一个接口控制器传递一个整数。控制器“SecondPage”中的滑块将从滑块中获取一个整数值,并将其发送到名为“ThirdPage”的界面控制器,并将该标签的标题设置为该值。我尝试了很多方法,但都无济于事。我只是想从第二个接口控制器发送上下文,在第三个控制器的 awake(withContext context: Any?) 方法中接收它并将其保存为标题,直到再次更改滑块。

这是我在第二个页面控制器中首先尝试的,但它没有传递任何数据:

这是我之后尝试的方法,它传递了数据,但没有“保存”它。它会弹出带有更新标签到滑块值的界面控制器,但我不希望它弹出,我希望将该值保存到标签中。当我关闭弹出窗口并向右滑动到第三页时,标签仍称为“标签”

这是输出的一些图片以及我的一些代码。任何帮助表示赞赏,谢谢。PS:这一切都在 Swift 3 中在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
119 浏览

swift - 在 Xcode 8.0 Swift 3.0 上的接口控制器之间传递数据

我想在两个接口控制器之间传递一个字符串。在 InterfaceController1 我想创建一个变量,如:

然后能够访问 InterfaceController2 上的该变量。

我不想使用全局变量,因为我知道不推荐使用它们。

StackOverFlow 上有一个答案,但它是在 Swift 1 发布时创建的,我找不到任何最新的 anwser。

谢谢

0 投票
1 回答
120 浏览

swift - 在两个接口控制器之间传递数据

我想在两个接口控制器之间传递一个字符串。在InterfaceController1我想创建一个变量,如:

然后就可以访问那个变量了InterfaceController2

Stack Overflow 目前只有一个答案,但它是在 Swift 1 发布时创建的,我找不到任何最新的答案。

我不想使用全局变量,因为我知道不推荐使用它们。

0 投票
1 回答
95 浏览

swift - 执行 presentController(withNames:contexts:) 时如何显示数组的第二个屏幕

执行上述行时,ScreenOne屏幕显示如下:

突出显示数组中的第一页

执行上述行时,我将如何显示第二页。IEScreenTwo

我希望第二页像这样显示在数组中