如何限制字符并在计算器屏幕中停止计算

时间:2014-09-25 17:00:50

标签: ios integer uilabel

enter image description here

我在登录屏幕上使用了一些计算器方法。

如:

- (IBAction)numberPressed:(id)sender
{
currentNumber = currentNumber *10 + (float)[sender tag];
calculatorScreen.text = [[NSString alloc]initWithFormat:@"%2.f", currentNumber];
}

- (IBAction)C:(id)sender
{
[self setCurrentNumber:0];
calculatorScreen.text = @"Enter Password";
}

我遇到两件事:

  1. 我需要将 calculatorScreen.text 中的字符数限制为7个字符。

  2. 我需要在 8 条目后停止乘以该数字。

    • 我不确定究竟是什么原因,但按下8次按钮后数字开始相乘(从原始按钮数字改变)
  3. 一直在四处寻找并尝试不同的事情,无法弄清楚。

    提前致谢。

1 个答案:

答案 0 :(得分:0)

将字符限制为7:

- (IBAction)numberPressed:(id)sender
{
currentNumber = currentNumber *10 + (float)[sender tag];

if ([calculatorScreen.text length] == 7)

{        
    return;
}

else {

calculatorScreen.text = [[NSString alloc]initWithFormat:@"%2.f", currentNumber];

self.calculatorString = calculatorScreen.text;

}
}

仍然不确定如何修复'倍增'问题。如果用户的密码超过8个字符,则会出现问题。但是现在,我将其设置为7个字符以防止它。