我正在尝试学习Swift,而我正在玩变量的基础知识。我创建了一个应用程序,当你按下一个按钮时,标签的值会改变,而当添加1的按钮工作时,减去一个按钮的按钮不会。如果我更改第一个按钮(plusone)以减去一个,那么它是否有效,所以我认为它与如何解析代码有关?你能够解释一下这是如何工作的吗?提前谢谢。
代码在这里:
vendor
如果重要的话,应用程序看起来像这样: Screenshot
第二个按钮被命名为'plustwo',因为我还没弄明白我需要重命名它的位置,如果我只是在这里重命名它,应用程序会显示一个空白屏幕,而不是别的。
答案 0 :(得分:0)
来自评论:
我将plustwo改为-2,它按预期工作。按添加一个 添加一个并按Substract One减去一个。我不知道为什么。
您描述的行为告诉我您已将 Subtract One 按钮连接到plusone
和plustwo
功能。您可以通过 control - 点击 Interface Builder 中的按钮并检查连接来检查。如果您看到 TouchUpInside 连接到两个功能,请通过单击x
删除一个以删除连接。
您可以验证行为的另一种方法是将记录print
语句添加到print("in plusone")
和print("in plustwo")
等函数中。当您按 Subtract One 时,如果您在控制台中看到这两条消息,则表示您已将按钮连接到@IBAction
。
这是怎么发生的?当您复制已经与@IBAction
建立连接的 Interface Builder 中的按钮时,会经常发生这种情况。将它连接到新的@IBAction
不会取代第一个,它只是连接到它们,并在按下按钮时调用它们。
第二个按钮名为'plustwo',因为我还没弄明白 如果我只是在应用程序中重命名它,我还需要重命名它 显示一个空白屏幕,没有别的。
要重命名该功能,您需要更改和功能的名称,然后在 Interface Builder 中删除并重新连接连接。如上所述, control - 点击 Interface Builder 中的按钮,删除与旧功能名称的连接,然后将按钮连接到新功能。