【发布时间】:2019-08-12 12:46:13
【问题描述】:
我做了一个数组,并把一些值放进去。
通过使用 segue,
我想将数组发送到另一个视图。
这里是代码。
-- 视图1 -----
override func viewDidLoad() {
super.viewDidLoad()
var receivedData: Array<String> = Array()
receivedData.append("0.123")
receivedData.append("0.190")
receivedData.append("0.210")
receivedData.append("0.213")
}
@IBAction func graph(for segue: UIStoryboardSegue, sender: Any?)
{
if segue.destination is GraphViewController
{
let vc = segue.destination as? GraphViewController
vc?.transferedData = receivedData
}
}
-- 视图2 -----
var transferedData: Array<String> = Array()
但它不起作用。
有错误点赞
“发送到实例的无法识别的选择器”
“由于未捕获的异常'NSInvalidArgumentException'而终止应用程序, 原因:无法识别的选择器发送到实例“
" libc++abi.dylib: 以未捕获的 NSException 类型异常终止"
帮我解决这个问题。
感谢阅读。
【问题讨论】:
-
你必须在类的顶层声明
receivedData。graph(for segue是什么? -
我想使用“Charts”库绘制图表。所以我把 segue 命名为 graph。
-
“在类的顶层声明receivedData”是什么意思?我应该在 View2 上声明吗?
-
top level 表示在
viewDidLoad之外