【问题标题】:How to display text depending on the number in UILabel如何根据 UILabel 中的数字显示文本
【发布时间】:2011-05-17 09:01:12
【问题描述】:

我使用一些计算功能在应用程序上工作。我有一个UITextField,用户输入一个数字,UILabel 是结果。如何根据第一个 UILabel 中的数字在第二个 UILabel 中显示一些文本?

例子:

If number in *firstLabel less than 20, then display in *secondLabel: small

If number in *firstLabel from 20 to 30, then display in *secondLabel: normal

If number in *firstLabel greater than 40, then display in *secondLabel: big

我希望你明白我的意思。谢谢!对不起我的英语。

【问题讨论】:

    标签: iphone ios uitextfield uilabel


    【解决方案1】:

    您需要从您的firstLabel中获取int值,该值存储为文本,您可以使用NSStringintValue函数获取它。

    使用下面的

    int intValueFromFirstLabel = [firstLabel.text intValue];
    
    if(intValueFromFirstLabel < 20)
    {
      secondLabel.text = @"small";
    }
    else if(intValueFromFirstLabel >= 20 && intValueFromFirstLabel <= 30)
    {
      secondLabel.text = @"normal";
    }
    else if(intValueFromFirstLabel > 40)
    {
      secondLabel.text = @"big";
    }
    

    【讨论】:

      【解决方案2】:

      您可以使用此代码

       lblFirst.text = txtField.text;
       int intValue = [lblFirst.text intValue];
       if (intValue < 20) {
          lblSecond.text = @"Small";
       } else if (intValue >= 20 && intValue <= 30) {
          lblSecond.text = @"Normal";
       } else if (intValue > 40) {
          lblSecond.text = @"Big";
       }
      

      【讨论】:

        【解决方案3】:
        if([firstLabel.text intValue] <20)
        {
            secondLabel .text=@"small";
        }
        else if(([firstLabel.text intValue] >=20) && ([firstLabel.text intValue] <=30) )
        {
            secondLabel .text=@"normal";
        }
        else if([firstLabel.text intValue] >30)
        {
            secondLabel .text=@"big";
        }
        

        【讨论】:

        • 既然可以一次调用intValue,为什么还要在 4 个地方调用呢?提高可读性,也更容易在未来更改。
        猜你喜欢
        • 2021-12-18
        • 1970-01-01
        • 1970-01-01
        • 2016-11-05
        • 2014-12-10
        • 1970-01-01
        • 2010-11-09
        • 2012-08-29
        相关资源
        最近更新 更多