ios - 如何将文本从 ViewController (iOS) 发送到 InterfaceController (Watch Kit)?
问题描述
我正在创建一个 iOS 应用程序来显示从麦克风到 UILabel 的分贝。我完全忘记了提前考虑 WatchKit 目标设备,并且没有太多经验。我想知道有没有办法将 .text 信息从我的 iOS ViewController 中的 UILabel 发送到 WatchKit InterfaceController?我尝试将它与我自己的班级一起发送,但它没有显示任何内容。我确实注意到标签不同。WatchKit 使用 WKInterfaceLabel 而不是 UILabel。
到目前为止我所做的: 1. 创建了一个新类以允许字符串参数使用公共函数更新其自己的标签。2.将手表的主类改为我刚刚创建的类。3. 创建一个变量来引用新创建的类。4. 将 label.text 作为参数发送给类以更新 watch label.text 5. 公共函数可以工作,但不适用于我当前的 updateMeters() 函数和 0.5 ms 计时器
- 我只想将我的标签从 viewController 同步到 watchKit - interfaceController 上的标签
- 我已经尝试过 WCSession 但不知道该为 WCConnectivity Delegate 要求提供什么
- 我什至尝试从 ios 写入文本文件并从 watch 读取文件,但它们的文件路径似乎也不同。
编辑:
最后使用 WatchConnectivity Kit 和 DispatchQueue.main.async(execute: {}) 让它工作
解决方案
主要方法是使用WatchConnectivity框架。
推荐阅读
- node.js - Nodemailer 24小时发送限制
- java - 如何决定应该抛出多少个异常?
- flutter - 如何在颤振中使用多个提供者
- php - 获取 json_encode 的 php 值
- html - ListBoxFor .NET CORE MVC 中的替代方案
- python - 在 Python 中的列表中添加元组
- azure-pipelines - Filetransform 任务在 Azure 管道任务期间转义换行符
- python - Python 区块链。NameError:名称“链”未定义
- docker - 仅使用委托密钥签署 docker 镜像
- laravel - Sum value from different view - laravel