如何使2个按钮更改Xcode中的标签值

时间:2011-07-11 21:21:26

标签: objective-c xcode

我想知道是否有办法让2个单独的按钮更改1个标签的值。示例:按钮1使标签显示“Hello”;而第二个按钮使标签说“再见”。只需按一下按钮,我就可以轻松地使标签显示一个值。我甚至创建了一个计数器,这样当按下按钮时,文本就会消失。

3 个答案:

答案 0 :(得分:4)

代码:

-(IBAction)hello:(id)sender {
    label1.text = @"Hello.";
}

-(IBAction)goodbye:(id)sender {
    label1.text = @"Goodbye.";
}

将按钮分别链接到这些IBActions,将标签链接到插座,你应该好好去。

答案 1 :(得分:1)

将以下内容添加到视图控制器的.m:

-(IBAction)hello:(id)sender {
    label.text = @"Hello";
}

-(IBAction)goodbye:(id)sender {
    label.text = @"Goodbye";
}

以及.h:

-(IBAction)hello:(id)sender;
-(IBAction)goodbye:(id)sender;

然后在Interface Builder中将方法链接到按钮。当然,您需要通过Interface Builder连接您的标签并在您的代码中引用,但我假设您已根据问题的内容完成了此操作。

答案 2 :(得分:0)

对于带有Swift 5的Xcode 10.2

您还可以使用Swift通过助手编辑器通过按钮更改Mac OS标签。确保情节提要板位于左侧,并且连接至窗口视图的类显示在右侧(在入门项目中,文件名默认为:ViewController.swift)

  1. 标签连接到NSViewController(控件+拖动到代码中)位于类语句下(靠近顶部),
    出现提示。

    连接=出口
    名称=“ 标签”或“您的标签名称”
    类型=任何

    结果代码如下所示:
    @IBOutlet weak var label: NSTextField!

  2. 按钮连接到NSViewController(控件+拖动到代码中)通常在靠近底部但紧随最后一个花括号上方的任何固定覆盖语句之后的任何位置< / strong>
    出现提示时。

    Connection =动作
    Name =“ Button ”或“您的按钮名称”
    类型=任何

    结果代码应如下所示
    @IBAction func button(_ sender: Any) {
    }

  3. 然后在按钮连接创建的两个大括号之间添加以下代码。

    @IBAction func button(_ sender: Any) { self.label.stringValue = "New Label" }

  4. 运行项目



大声笑,我本来就很忙,当我遇到此条目并想起如何做时,我正在寻找如何更改按钮标签。

如果您也有兴趣更改按钮标签,则基本上是相同的过程

将按钮连接到class语句下的代码,并像第1步那样进行Outlet连接。要在其中更改按钮标签的代码,请添加以下代码行。

self.button.title = "New Button Label"

希望这对需要它的人有所帮助。