我正在开发一个具有清除按钮的计算器。我可以轻松清除包含数字的整个标签,但我希望它应该在按钮 click 上逐位清除。这可能吗 。我该如何实施?
-(IBAction)cancelOperation
{
currentNumber = 0;
计算器屏幕.text = @"0.00";
currentOperation = 0;
}
我认为你所做的就是一次删除一封信。尝试将此方法放入您的按钮
编辑
试试这个
-(IBAction)cancelOperation
{
NSString *str = [[NSString alloc]initWithString:label.text];
NSString *deleteOne;
deleteOne = [str substringToIndex:[str length]-1];
label.text = deleteOne;
即使你想设置你的变量类型为 double 使用这个
currentOperation = [deleteOne doubleValue];
}
编辑2
正如我在这里看到的,你要求删除一个标签
我可以轻松清除包含数字的整个标签,但我希望它应该在按钮单击时逐位清除
然而,这是如何通过数字变量 currentNumber 减少您的数字
-(IBAction)cancelOperation
NSString *str = [NSString stringWithFormat:@"%i", currentNumber];
NSString *deleteOne;
deleteOne = [str substringToIndex:[str length]-1];
currentNumber = [deleteOne intValue];
NSLog(@"%i", currentNumber);
}
在这一点上这种方法是否不好,即使我相信我还没有理解问题和你的问题
-(IBAction)cancelOperation
{
currentNumber = 0;
NSString* str = calculatorScreen.text;
calculatorScreen.text = [str substringToIndex:[string length]-1];;
currentOperation = 0;
}