2017-09-25 11 views
1
// 
// CommentViewController.swift 
// Bordy 
// 
// Created by Micheal Tyler on 9/22/17. 
// Copyright © 2017 Bordy,LLC. All rights reserved. 
// 

import UIKit 
import FirebaseDatabase 
import FirebaseAuth 
class CommentViewController: UIViewController { 

    @IBOutlet weak var commentTextField: UITextField! 
    @IBOutlet weak var sendButton: UIButton! 
    @IBOutlet weak var tableView: UITableView! 
    @IBOutlet weak var constraintToBottom: NSLayoutConstraint! 

    let postId = "-KuXb-8C5kijYNqOOihB" 
    var comments = [Comment]() 
    var users = [Users]() 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     tableView.dataSource = self 
     tableView.estimatedRowHeight = 77 
     tableView.rowHeight = UITableViewAutomaticDimension 
     empty() 
     handleTextField() 
     loadComments() 

     NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardWillShow(_:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil) 
     NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardWillHide(_:)), name: NSNotification.Name.UIKeyboardWillHide, object: nil) 
    } 

/*私はシミュレータ何で画面にタップすると、コードが印刷され、置かれていた場合、画面上でユーザーがクリックして終了した場合にこれが私のキーボードもdoesntの皮、ありますtextField */touchesBeganは私のコードに応答しない

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

答えて

0

あなたがここにテーブルビューを使用しているので、それはあなたのビューがそれらを得ることができる前に、あなたのテーブルビューのスクロールビューがタッチを吸収していることは非常に可能性があります。

ユーザーがあなたのテーブルビューをタップするたびにキーボードを非表示にしたい場合は、代わりにUITapGestureRecognizerでこれを行うことを検討可能性がありますあなたのキーボードを非表示にするresignFirstResponder()メソッドを使用することができます

// MARK: LifeCycle 

override func viewDidLoad() { 
    super.viewDidLoad() 

    tableView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(handleHideKeyboard))) 
} 

// MARK: User Interaction 

func handleHideKeyboard() { 
    commentTextField.resignFirstResponder() 
} 

注:

resignFirstResponder()

は、relinqように頼まれたことを、このオブジェクトに通知しそのウィンドウの最初のレスポンダーとしてステータス を使用します。

関連する問題