iOS标签不会使用字符串值更新文本,但打印字符串在Swift中工作正常

iOS标签不会使用字符串值更新文本,但打印字符串在Swift中工作正常,ios,swift,Ios,Swift,在过去的两天里,我一直在寻找解决这个问题的方法。我遇到问题的代码部分是:[say practiceLabelVar获取可选值(Goldfish)] 我在控制台中得到的输出如下: test Goldfish 注意:代码先在else语句中打印值,然后在if-let语句中打印代码 practiceLabel.text未更改并保留其默认值 请帮忙。 谢谢我想请您理解 代码运行良好,它只是检查其中是否有值,是的,没有值,因此会执行else条件。尝试分配一些值,你就会明白它是如何工作的 注意:var-p

在过去的两天里,我一直在寻找解决这个问题的方法。我遇到问题的代码部分是:
[say practiceLabelVar获取可选值(Goldfish)]

我在控制台中得到的输出如下:

test

Goldfish
注意:代码先在else语句中打印值,然后在if-let语句中打印代码

practiceLabel.text
未更改并保留其默认值

请帮忙。
谢谢

我想请您理解

代码运行良好,它只是检查其中是否有值,是的,没有值,因此会执行else条件。尝试分配一些值,你就会明白它是如何工作的


注意:
var-practiceLabelVar:String?
中没有值,如果其中有值,那么让它工作,或者执行最终解决。根据您在上面添加的注释,您正在从另一个视图设置“Goldfish”,如前所述,下面是相同的
@IBAction func practiceTyping(uu发送者:任意)的代码{
执行模式(标识符为“练习输入模式”,发送者:自我)
让PracticeTypingVar:PracticeTyping=self.storyboard?.InstanceEviewController(标识符为:“PracticeTypingView”)作为!PracticeTyping
PracticeTypingVar.practiceLabelVar=myFavoriteAnimals[(发件人作为任何对象).tag]。名称
当前(PracticeTypingVar,动画:true,完成:nil)
}

您在这里所做的是,您演示了两次“练习键入”viewController,一次是使用performsgue(),另一次是使用self.present(viewController),这是错误的。它首先打印“test”的原因是,当您通过performsgue呈现视图时,没有设置“practiceLabelVar”的值。
因此,删除
performsgue(标识符为:“practiceTypingSegue”,发送者:self)
,您就可以开始了。

您在哪里为practiceLabelVar分配“金鱼”??它将变为else的原因是,您尚未为practiceLabelVar变量指定任何值。我正在从另一个视图的表视图控制器中指定值Goldfish。当我点击@iAction func practiceTyping(uu-sender:Any){performSegue(带有标识符:“practiceTypingSegue”,sender:self)按钮时,让PracticeTypingVar:practiceTyping=self.storyboard?.InstanceViewController(带有标识符:“PracticeTypingView”)as!PracticeTyping PracticeTypingVar.practiceLabelVar=myFavoriteAnimals[(发送者作为任何对象).tag].name self.present(PracticeTypingVar,动画:true,完成:nil)}practiceLabelVar的值来自选项卡视图,代码打印出我正在寻找的正确值。我现在的问题是在practiceLabel.text中获取此值,谢谢
test

Goldfish