2016-05-01 68 views
0
按钮

有人可以帮助我如何使检索前值

我使按钮可以恢复之前的值

,但我有两个TextFiled

我必须在两个TextFiled工作编写检索按钮

我不希望发生这种情况

我想在我写第一个TextFiled时,检索按钮的工作没有任何问题

,但如果我写的第一TextFiled,并在同一时间,我想检索按钮的工作没有任何问题

var previousValues: [String] = [String](); 
    var previousValues1: [String] = [String](); 


    previousValues.append(TextFailde.text ?? "error"); 
    previousValues1.append(TextFilde1.text ?? "error"); 

    if self.previousValues.count > 0 { 
      let previousValue = self.previousValues.removeLast() 
      let subtracted = (Int(self.lblZeroUs.text!)!) - (Int(previousValue)!) 
      self.lblZeroUs.text = "\(subtracted)" 
     } 

    else if self.previousValues1.count > 0 { 
      let previousValue = self.previousValues1.removeLast() 
      let subtracted2 = (Int(self.lblZeroThey.text!)!) - (Int(previousValue)!) 
      self.lblZeroThey.text = "\(subtracted2)" 
     } 

enter image description here

,并在这里的错误第二TextFiled

enter image description here

+0

尚不清楚。你的检索按钮代码是什么? – Shubhank

回答

0
previousValues.append(TextFailde.text ?? "error"); 
previousValues.append(TextFilde1.text ?? "error"); 

您添加到同一阵列的两倍,尝试代码更改为

previousValues.append(TextFailde.text ?? "error"); 
previousValues1.append(TextFilde1.text ?? "error"); 
+0

不起作用,当我写在第一个TextFiled并单击按钮(做它),然后当我点击(撤退)按钮我得到错误,因为我不写在第二个TextFiled –

1

有许多错误,首先你不要用首字母大写为你申报的属性,它被认为是一种不好的做法。

然后,当你在数学运算中涉及到你的属性时,你需要给它们分配一个起始值,特别是如果你的代码尝试转换字符串。

在Swift中,你不需要在每个语句的末尾都写分号。

我不知道你的代码的其余部分,但是你的代码行崩溃,因为你试图运行使用属性的数学运算没有价值。

这下面这只是一个例子,以避免第一崩溃了零:

textFailde.text = "0" 
textFilde1.text = "0" 
previousValues.append(textFailde.text ?? String(0)) 
previousValues1.append(textFilde1.text ?? String(0)) 
self.lblZeroUs.text = String(0) 
self.lblZeroThey.text = String(0) 

if self.previousValues.count > 0 { 
    let subtracted = (Int(self.lblZeroUs.text!)!) - (Int(self.previousValues.last!))! 
    self.previousValues.removeLast() 
    self.lblZeroUs.text = "\(subtracted)" 
} 
else if self.previousValues1.count > 0 { 
    let subtracted2 = (Int(self.lblZeroThey.text!)!) - (Int(self.previousValues1.last!))! 
    self.previousValues1.removeLast() 
    self.lblZeroThey.text = "\(subtracted2)" 
} 
+0

thx,但仍然没有工作,如果我不写在第一textfiled我得到错误 –

+0

检查你的代码,如果你按下按钮后清理您的文本字段;)请记住,您的代码取决于文本字段的值,他们不能清理没有像0的起始值。我在我的编译器中启动这个答案没有错误 –

+0

它的工作我改变textfiled.text?.removeAll到textfiled.text =“0”<点击按钮后(这样做),这是很好,但每次当我想写的数字在textfiled我必须删除数字(0),男人我的英语如果你不明白告诉我不好,并且谢谢你试图帮助我 –