2016-10-29 2 views
3

Ich habe ein kleines Programm gemacht, das ich benutze, um das Geld im Safe bei der Arbeit zu zählen, aber nach der Aktualisierung meines iPhone, hat es nicht mehr funktioniert.Wie man die Tastatur in iOS zurücknimmt

Nach viel lesen und so weiter habe ich alles behoben, aber ich habe keine neue Möglichkeit gefunden, auf die Tastatur zu verzichten.

Vor dem Update I benutzen:

@IBAction func resignKeyboard(_sender: AnyObject) { 
    _sender.resignFirstResponder() 
} 

Das funktioniert nicht mehr, damit ich eine neue Art und Weise lieben würde, es zu tun. Ich habe ziemlich viel nach einer Lösung gesucht, aber ich habe keine der Lösungen verstanden, die ich gefunden habe. Also bitte vereinfachen Sie Ihre Antworten so viel wie möglich.

Das ist alles von der "ViewController.Swift" von meinem Programm:

// 
// ViewController.swift 
// Pengeskabstæller 
// 
// Created by Alex on 09/07/2016. 
// Copyright © 2016 Alex. All rights reserved. 
// 

import UIKit 


class ViewController: UIViewController, UITextFieldDelegate { 

@IBOutlet weak var In50B: UITextField! 
@IBOutlet weak var In50L: UITextField! 
@IBOutlet weak var In20B: UITextField! 
@IBOutlet weak var In20L: UITextField! 
@IBOutlet weak var In10B: UITextField! 
@IBOutlet weak var In10L: UITextField! 
@IBOutlet weak var In5B: UITextField! 
@IBOutlet weak var In5L: UITextField! 
@IBOutlet weak var In2B: UITextField! 
@IBOutlet weak var In2L: UITextField! 
@IBOutlet weak var In1B: UITextField! 
@IBOutlet weak var In1L: UITextField! 
@IBOutlet weak var In05B: UITextField! 
@IBOutlet weak var In05L: UITextField! 
@IBOutlet weak var Ialt: UILabel! 


@IBAction func resignKeyboard(_sender: AnyObject) { 
    _sender.resignFirstResponder() 
} 
override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a  nib. 

} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

@IBAction func Knap(sender: AnyObject) { 
    //Hvad knappen gør 

    //Ganger input ved værdi af bundt eller løse 
    var x50B: Int = Int(In50B.text!)! 
    x50B = x50B*5000 
    var x50L:Int = Int(In50L.text!)! 
    x50L = x50L*500 
    var x20B:Int = Int(In20B.text!)! 
    x20B = x20B*4000 
    var x20L:Int = Int(In20L.text!)! 
    x20L = x20L*400 
    var x10B:Int = Int(In10B.text!)! 
    x10B = x10B*2000 
    var x10L:Int = Int(In10L.text!)! 
    x10L = x10L*200 
    var x5B:Int = Int(In5B.text!)! 
    x5B = x5B*1000 
    var x5L:Int = Int(In5L.text!)! 
    x5L = x5L*200 
    var x2B:Int = Int(In2B.text!)! 
    x2B = x2B*500 
    var x2L:Int = Int(In2L.text!)! 
    x2L = x2L*50 
    var x1B:Int = Int(In1B.text!)! 
    x1B = x1B*500 
    var x1L:Int = Int(In1L.text!)! 
    x1L = x1L*50 
    var x05B:Int = Int(In05B.text!)! 
    x05B = x05B*200 
    var x05L:Int = Int(In05L.text!)! 
    x05L = x05L*20 

    //Lægger det hele sammen 

    let penge1 = (x50B + x50L + x20B) 
    let penge2 = (x20L + x10B + x10L) 
    let penge3 = (x5B + x5L + x2B + x2L) 
    let penge4 = (x1B + x1L + x05B + x05L) 
    let penge99 = String(penge1+penge2+penge3+penge4) 

    //Printer ialt 
    Ialt.text = penge99 
} 

}  

Antwort

3

Ich denke, Dies ist ein besserer Weg, anstatt eine Steckdose hinzuzufügen.

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 
    view.endEditing(true) 
} 

Hoffe es hilft!

+0

Es funktioniert sender.resignFirstResponder() perfekt zu ändern! Aber ich habe das nächste Problem, es stürzt ab, wenn ich den Knopf drücke, der das letzte Bit der App aktiviert. –

+0

Ist das passiert, nachdem Sie dieses Bit des Codes hinzugefügt? Das würde nicht viel Sinn machen. Oder ist es etwas ganz anderes? – nunezve

+0

Nein, das Problem war etwas anderes, das sich zwischen swift 2 und 3 geändert hat. Ich habe es hier behoben http://StackOverflow.com/questions/40324555/my-app-is-simple-app-is-crashing/40324682#40324682 –

3

Unter der Annahme, alle Textfelder sind Subviews von view, können Sie endEditing Methode wie folgt verwenden:

@IBAction func resignKeyboard() { 
    view.endEditing(true) 
} 
0

Versuchen Sie, den Absender zu UITextField statt AnyObject und dann tun können,

Verwandte Themen