【发布时间】:2016-04-29 04:25:10
【问题描述】:
我正在制作一个应用程序,用户在文本字段中输入一些数字,然后它会在标签上给出答案。我的答案显示在另一个视图控制器上。在我只有其中一些工作的所有屏幕上使用相同的准备 segue 方法。其他人将传递我在第一个视图控制器标签中的任何文本(我已经通过输入各种内容进行了检查,它显示在另一边)......我还删除了 segue 并确保计算有效第一个视图控制器中的标签正在获取信息。
这让我相信它的设置方式很好,但是 segue 发生得如此之快,以至于在执行 segue 时第一个视图控制器上的标签仍然具有原始文本,并将该信息作为字符串而不是答案...
可以改变吗?这将是我目前写的唯一合乎逻辑的事情。如果有可能怎么解决?
任何帮助将不胜感激。谢谢
编辑:
这是我被要求发布以帮助解决这个问题的全部代码
所以如果在第一个视图控制器中我放了一个“?”标签中的文本只是为了保存标签,在第二个视图控制器中我放了一个“!”在答案标签中保存标签。运行模拟器后的第二个视图控制器,第二个视图控制器将显示一个?第一个标签的文本......所以它确实表明它正在推送数据,它只是没有推送标签中的信息。
【问题讨论】:
-
可能应该指出我正在快速写作......不是专家,只是作为爱好的人
-
解决方案似乎很简单,在 segue 发生之前使用 prepareforsegue() 中的计算值,但您可以显示一些代码来获取原因并更好地理解问题。我已经看到标签核心数据是你以某种方式尝试在核心数据中存储价值并从其他视图控制器获取。
-
添加了一些segue代码,这样你就可以看到了..
-
所以你是说,当你在第一个标签内(在第一个视图控制器中)执行 segue 时,问号被转移到第二个视图控制器标签,对。那么问题出在哪里,您所说的信息没有传输。
-
虽然我会尝试,但我真的很难通过写作来解释。通过的问号仅用于确保 segue 有效。在 segue 期间应该传递的实际内容是显示在标签中的答案...示例文本字段 1 + 文本字段 2 = label1 ...当我在没有文本 segue 的情况下运行模拟器时,“label1”显示答案textfield1 + textfield2 虽然标签的持有(在我的示例中是?)文本是发送到第二个视图控制器的内容,而不是正在显示的答案....希望这是有道理的
标签: swift uitextfield uilabel segue