未分類

タップでsearchBarのキーボードを閉じる方法

投稿日:

navigationControllerを使っている場合、

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

が使えない。

代わりにUITapGestureRecognizerを使う。

 override func viewDidLoad() {
        super.viewDidLoad()
       
        //タップした時の処理を指定
        let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(SearchViewController.dismissKeyboard))
        tap.cancelsTouchesInView = false //他のボタンやセルのタップ検知を邪魔しないようにする
        view.addGestureRecognizer(tap)
    }

//タップ時にキーボードを閉じる
    @objc func dismissKeyboard() {
        view.endEditing(true)
    }

-未分類

執筆者:

関連記事

no image

マルチデバイスに対応する方法

マルチデバイス対応とは iPhoneのデバイスによって画面サイズが異なるため、それぞれの端末で正常に表示するための対応。 マルチデバイス対応方法 主に3つの方法がある。 ・オートレイアウト ・プログラ …

GoogleAdMobで画面下にバナー広告を表示する

GoogleAdMobで画面下にバナー広告を表示する方法。 1. ライブラリ「Google-Mobile-Ads-SDK」をインストール&インポート ライブラリをpodインストールして、imp …

no image

vtuberのグリーンバックを消す方法

プロジェクトパネルのエフェクトを選択する。 ビデオエフェクトのタブを開く。 キーイング→ultraキーを選択する。 グリーンバックの素材にドラッグ&ドロップする。 ソースパネルのultraキー …

no image

UICollectionViewでセルをはみ出してLabelを表示させる

CollectionViewCellにセルの幅より大きいLabelを追加すると、はみ出た分は横にある次のセルの下に隠れてしまう。 横のセルの上にLabelを表示させるにはzPositionの値を変えて …

no image

Realmでモデル定義を変更した際に起こるエラーの対処法

Realmでモデル定義を変更するとエラーが出る。 マイグレーションをすることで解決する。 AppDelegate.swiftのfunc application(_ application: UIApp …