如何在iOS中使用键盘
我制作了一个小程序,用来计算工作时保险箱里的钱,但在更新我的iPhone之后,它就不再工作了 经过大量的阅读等,我修复了一切,但我还没有找到一个新的方法来放弃键盘 在更新之前,我使用了以下内容:如何在iOS中使用键盘,ios,keyboard,swift3,ios10,resignfirstresponder,Ios,Keyboard,Swift3,Ios10,Resignfirstresponder,我制作了一个小程序,用来计算工作时保险箱里的钱,但在更新我的iPhone之后,它就不再工作了 经过大量的阅读等,我修复了一切,但我还没有找到一个新的方法来放弃键盘 在更新之前,我使用了以下内容: @IBAction func resignKeyboard(_sender: AnyObject) { _sender.resignFirstResponder() } 这已经不起作用了,所以我喜欢一种新的方法。我已经寻找了很多解决方案,但我还没有理解我找到的任何解决方案。所以请尽量简化你的答
@IBAction func resignKeyboard(_sender: AnyObject) {
_sender.resignFirstResponder()
}
这已经不起作用了,所以我喜欢一种新的方法。我已经寻找了很多解决方案,但我还没有理解我找到的任何解决方案。所以请尽量简化你的答案
这是我程序中“ViewController.Swift”的全部内容:
//
// 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
}
}
假设所有文本字段都是
视图的子视图
,您可以使用如下方法:
@IBAction func resignKeyboard() {
view.endEditing(true)
}
我认为这是一个更好的方法,而不是增加一个出口
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
view.endEditing(true)
}
override func touchsbegind(touch:Set,带有事件:UIEvent?){
view.endEditing(真)
}
希望有帮助 尝试将发件人更改为
UITextField
而不是AnyObject
,然后您就可以执行sender.resignFirstResponder()
它工作得非常好!但我有下一个问题,当我按下按钮激活应用程序的最后一位时,它崩溃了。这是在你添加了这一位代码之后发生的吗?那没有多大意义。或者完全是别的什么问题?不,问题是在swift 2和swift 3之间发生了变化。我在这里修好了