Я новичок в языке Swift. У меня есть знания в веб-разработке, но мне нужна ваша помощь в этом.
Мне нужно создать страницу регистрации с коллекцией выходов. У меня есть 4 текстовых поля, и каждому из них присвоены теги. Поскольку я собираюсь перемещать курсор из одного текстового поля в другое, используя функцию befirstresponder(), он не работает, и когда я печатаю теги, подобные тем, которые я назначил тегу для его текстового поля, он не всегда печатает то же самое.
Он приходит в случайном порядке. Вот код.
import UIKit
class ViewController: UIViewController,UITextFieldDelegate {
@IBOutlet var registerTF: [UITextField]!
@IBAction func registerTFTapped(_ sender: UITextField) {
let tag = sender.tag
print(tag)
for tf in registerTF
{
if tf.tag == tag
{
func textFieldShouldReturn( _ textField: UITextField) -> Bool {
nextTextFieldToFirstResponder(textField: textField)
return true;
}
func nextTextFieldToFirstResponder(textField: UITextField) {
if tf.tag == 0 {
self.becomeFirstResponder()
}
else if tf.tag == 1 {
self.becomeFirstResponder()
}
else if tf.tag == 2 {
self.becomeFirstResponder()
}
else if tf.tag == 3 {
self.resignFirstResponder()
}
}
}
}
}
//LifeCycle-Starts
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func viewWillAppear(_ animated: Bool) {
//#
}
override func viewDidAppear(_ animated: Bool) {
//#
}
override func viewWillDisappear(_ animated: Bool) {
//#
}
override func viewDidDisappear(_ animated: Bool) {
//#
}
//LifeCycle-Ends
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
self.becomeFirstResponder
; вам нужно следующее текстовое поле, чтобы стать первым ответившим. - person Paulw11   schedule 19.12.2017