【问题标题】:Adding label text together一起添加标签文本
【发布时间】:2014-07-10 12:30:56
【问题描述】:

嗨,我对 iOS 比较陌生,我只是想知道如何将两个标签添加在一起。

- (IBAction)switch1
{    
    if (switch1.on) {
        value1.text = @"3";
    } else {
        value1.text = @"0";
    }
}

- (IBAction)switch2
{
    if (switch2.on) {
        value2.text = @"3";
    } else {
        value2.text = @"0";
    }
}

如您所见,我使用了两个开关,如果它们打开或关闭,它们会显示两个不同的值。

有人可以帮我理解如何将两个值相加。

即如果开关一打开而开关二关闭,则值为 3,我希望此值显示在另一个标签中。

到目前为止,我已经想出了这个,但由于某种原因它不起作用,我感觉它是格式说明符,但我不确定。

int sum = [[value1 text] intValue] + [[value2 text] intValue];
value3.text = [NSString stringWithFormat:@"%d", sum];

【问题讨论】:

  • 是 var sum 的值还是 0?
  • 你在“sum”中得到什么结果
  • @Anbu.Karthik value3 字段为空
  • 您何时运行该代码?请在问题中添加更多内容以显示每一位代码运行的范围。
  • 请花一些时间研究 MVC 设计模式。您应该使用ints 保存要处理的数据,并且只显示UILabel 对象中的值(而不是按照您的建议将它们用作数据存储)。问题不应该是“将标签文本一起添加”,而应该是“如何在标签中显示计算结果”,当您说这听起来很简单时,就是这样。

标签: ios nsstring uilabel expression


【解决方案1】:

你没有这个:

int sum = [[value1 text] intValue] + [[value2 text] intValue];
value3.text = [NSString stringWithFormat:@"%d", sum];

在 ViewDidLoad 什么的?因为您必须在两个 IBAction 结束时调用它。否则,您的最终价值将永远不会改变。

【讨论】:

  • Np 我们都通过它;)
【解决方案2】:
  1. 确保您在 Interface Builder 中正确创建了 出口连接,如下所述:

    Creating an Outlet Connection

    简而言之。 Ctrl+单击并从 UISwitch 拖动到文件所有者,然后单击新的 switch1switch2 操作。为文本字段和开关创建插座并链接它们。

  2. switch1switch2 方法中设置断点并确保它们被调用。

  3. 在控制台中使用po 命令检查文本字段和开关是否配置正确。

    例如:

    po _textField1
    

    应该打印文本字段的描述。当文本字段不存在时,它将打印nil - 未链接到界面构建器中的控件。

【讨论】:

  • 先设置断点。然后,当它被点击并且应用程序的执行暂停时,使用 po 命令打印有关文本字段的信息。
  • 当我使用 po 命令时出现标签,它说错误 po_value1 is not a valid command
  • po 后面缺少一个空格字符。这就是编译器抱怨的原因。输入po _value1,它应该可以工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-22
  • 2012-05-12
  • 1970-01-01
  • 2018-11-27
  • 2013-07-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多