【问题标题】:How do I update textfield2 based on editing textfield1?如何根据编辑文本字段 1 更新文本字段 2?
【发布时间】:2015-09-04 09:58:01
【问题描述】:

我喜欢在 totalAmount 被编辑后立即更新 textfield2,我正在尝试以下操作:

    totalAmount.addTarget(self, action: "changeTextField2:", forControlEvents: UIControlEvents.EditingDidEndOnExit)

 func changeTextField2(textField: UITextField) {
        print("Total amount: \(totalAmount.text)")
        //amount vat - calculate vat based on textField
        amountVAT.text = "88"
    }

我正在保存文本字段值

func newItem(){

    let context = self.context
    let ent = NSEntityDescription.entityForName("List", inManagedObjectContext: context)


    let nItem = List(entity: ent!, insertIntoManagedObjectContext: context)
    let numberFormatter = NSNumberFormatter()

    nItem.amountVAT = numberFormatter.numberFromString(amountVAT.text!)
    .....more values
    nItem.invoiceImage = UIImagePNGRepresentation(imageHolder.image!)

    do {
     try context.save()
    } catch {
        print(error)
    }
}
func saveValues(sender: AnyObject) {

        if nItem != nil {
            editItem()
        } else {
            newItem()
        }

        dismissVC()
    }

【问题讨论】:

    标签: ios swift addtarget


    【解决方案1】:

    这可以使用 UITextFieldDelegate 方法使用这个函数 1.)

    textField1.delegate = self
    

    2.)

    func textFieldDidEndEditing(textField: UITextField)
    {
       if textField == textField1
       {
          textField2.text = textField1.text
       }
    }
    

    现在由您决定如何更改总金额。

    【讨论】:

    • 文本字段已更新,但是当我保存新的文本字段值时,它会存储一个空值?
    • 你有什么想法吗?
    【解决方案2】:

    为您的 textField1 使用 UITextField - textFieldDidEndEditing: 的委托函数。在此函数中,您可以获取 textField1 的值并可以编辑 textField2。

    Apple Documentation for UITextFieldDelegate

    【讨论】:

      【解决方案3】:

      把代码改成这个totalAmount.addTarget(self, action: "changeTextField2:", forControlEvents: UIControlEvents.EditingChanged)

      即将 UIControlEvents 更改为“EditingChanged”

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-11-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多