使用4个文本字段和id发送者10个按钮

时间:2012-06-17 18:25:52

标签: iphone objective-c xcode

我试图弄清楚如果我有4个文本字段field1,field2,field3和field4,以及10个按钮标记为0到9,当我按下按钮时它会在SELECTED文本字段上显示其标记号

我的10个按钮的代码是

- (IBAction)buttonPressed:(id)sender {
currentNumber = currentNumber *10 + (float)[sender tag];
field1.text = [NSString stringWithFormat:@"%0.f",currentNumber];
}

这只会将标记发送到field1。

我有4个字段,我希望按钮将标签发送到选定的字段。

有可能吗?如果它可以请你解释一下吗?

提前谢谢

2 个答案:

答案 0 :(得分:2)

拥有全球

UITextField * selectedField;

当用户选择字段

selectedField = field1
or
selectedField = field2
or
selectedField = field3
or
selectedField = field4

然后你可以实现你的

- (IBAction)buttonPressed:(id)sender {
    currentNumber = [selectedField.text floatValue];
    currentNumber += (float)[sender tag];
    selectedField.text = [NSString stringWithFormat:@"%0.f",currentNumber];
}

如果可能更容易(并且可以更好地保持正确的数字)将输入操作为字符串而不是将其转换为数字,然后添加值,然后重新转换回字符串!我想你会发现你按照自己的方式做到这一点,而不是像往常一样会遇到浮点转换问题!

这样,您始终将文本设置为所选字段

答案 1 :(得分:0)

我找到了

非常容易:)

if ([field1 isFirstResponder])

可以解决问题:)