質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

866閲覧

[swift] SearchBar使用後にホームボタンを押し、バックグラウンドにすると実行時警告が発生します

kon_do

総合スコア14

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2020/09/14 18:51

編集2020/09/16 03:58

前提・実現したいこと

Xcodeでswiftを使ったiosアプリ開発を勉強しています。
UIsearchBarを使用したく使い方を学んでいるところなのですが、実行時に警告表示がコンソールに表示され解決法分からず困っています。

該当のソースコード(問題が発生するサンプルコードです。内容に意味はありません。)

swift

1import UIKit 2 3@UIApplicationMain 4class AppDelegate: UIResponder, UIApplicationDelegate { 5 6 var window: UIWindow? 7 8 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 9 10 window = UIWindow(frame: UIScreen.main.bounds) 11 window?.rootViewController = MainViewController() 12 window?.makeKeyAndVisible() 13 14 return true 15 } 16 17} 18 19class MainViewController: UIViewController, UISearchBarDelegate { 20 21 override func viewDidLoad() { 22 super.viewDidLoad() 23 24 view.backgroundColor = .white 25 26 let searchBar = UISearchBar() 27 searchBar.delegate = self 28 searchBar.frame = CGRect(x: 0, y: 200, width: view.frame.width, height: 44) 29 view.addSubview(searchBar) 30 } 31 32 func searchBarSearchButtonClicked(_ searchBar: UISearchBar) { 33 // 検索ボタンを押したらキーボードを閉じる 34 searchBar.resignFirstResponder() 35 } 36 37} 38

※MainStoryBoardは使用せずコードにてUIの実装をしています。

再現手順

①上記コードを実行し、表示されているSearchBarをクリック → キーボードが開く
②任意の文字を入力し、「search」ボタンをクリック → キーボードが閉じる
③ホームボタンをクリック → デバッグコンソールに警告メッセージが出力

発生している問題・エラーメッセージ

[Snapshotting] Snapshotting a view (0x7fa911829000, UIKeyboardImpl) that is not in a visible window requires afterScreenUpdates:YES.

この警告メッセージの解消方法が分からず困っています。
原因および解決方法を教えていただきたいです。
また、検索ボタンを押した時にデフォルトだとキーボードが閉じないためdelegateにてresignFirstResponder()を実行していますが、
この方法で合っているのでしょうか?
よろしくお願いいたします。

補足情報(FW/ツールのバージョンなど)

MacOS Catalina 10.15.6
Xcode 11.7
シミュレーション実行対象はiphone8(ios 13.7)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問