swift - UIPasteBoard 项目 Any 不是 Any?
问题描述
所以我要在 2 个应用程序之间来回发送数据,我想因为它有很多不同模型中的数据,我可以使用UIPasteboard
. 但是我无法让它工作。这是代码和问题。
struct TestModel {
var value1: Int = 0
var value2: String = "hi"
}
class ViewController: UIViewController {
@IBOutlet weak var redView: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let model = TestModel(value1: 1, value2: "hello")
let testModel = Mirror.init(reflecting: model)
guard let paste = UIPasteboard.init(name: UIPasteboard.Name(rawValue: "test1"), create: true) else {return}
let items = testModel.children.map({
return [$0.label ?? "noLabel": $0.value]
})
print(items)
paste.addItems(items)
print(paste.items[0]["value1"])
}
}
print(items)
给了我以下信息:
[["value1": 1], ["value2": "hello"]]
所以到目前为止一切正常。
print(paste.items[0]["value1"])
但是给了我:
<OS_dispatch_data: data[0x2835d3cc0] = { leaf, size = 43, buf = 0x102f18000 }>
而且我不知道如何打开它,我已经尝试将它打开到Int
, String
, Data
,NSData
和所有东西,但似乎没有任何效果.. 那是怎么回事?
解决方案
推荐阅读
- c# - 使用 ItemsControl 或 ControlTemplate 在 WPF 中查看外观
- google-apps-script - 使用 Execution API 在用户授权的附加组件中调用函数
- java - 编写具有多个内部连接和其他条件的 Spring 规范
- flutter - 颤振:发送电子邮件
- javascript - 无法使用 React JS 从 Materialize 下拉列表中获取所选值
- c# - 如何解决由于包降级导致发布自包含控制台应用程序失败?
- ansible - Ansible Playbook 将 telnet show run 命令保存到文件语法错误
- vba - 一种将数据从一个选项卡中的范围复制到另一个选项卡的代码,但是每次运行代码时,它都会将数据复制到下面的行。Excel VBA问题
- windows - Windows DNS 不响应混乱类
- postgresql - 在使用 timesceledb 存储 OSM 数据时降低摄取率