IOS
 Computer >> コンピューター >  >> プログラミング >> IOS

iOSアプリでオンスクリーンキーボードをどのように非表示にしますか?


画面上のキーボードを非表示にするには、iOSSDKで事前定義されているいくつかの内部関数を利用する必要があります。テキストフィールドまたはtextViewを入力しているときに、キーボードが画面に表示されます。テキストフィールドに応じて内部機能を利用する必要があります。

たとえば、現在のテキストフィールドがtfOneの場合、次のコードを使用してテキストフィールドを非表示にできます。

tfOne.resignFirstResponder()

このコードは、呼び出されるとキーボードを非表示にします。ボタンまたはジェスチャレコグナイザーのアクションでこれを呼び出す場合があります。

このメソッドは限られたtextFieldsに適していますが、複数のtextFieldsまたはtextviewsで同じことを実現したい場合は、このメソッドを改善する必要があります。

同じ関数を作成できます。

func hideKeyboardWhenTappedAround() {
   let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(UIViewController.dismissKeyboard))
   tap.cancelsTouchesInView = false
   view.addGestureRecognizer(tap)
}
@objc func dismissKeyboard() {
   view.endEditing(true)
}

この関数はクラスで使用でき、テキストフィールドまたはテキストビューの外側の画面をタップするたびにキーボードが非表示になります。

ただし、ジェスチャが追加されるビューが必要であることがわかるように、この関数をUIViewExtensionに埋め込む必要があります。

extension UIViewController {
   func hideKeyboardWhenTappedAround() {
      let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(UIViewController.dismissKeyboard))
      tap.cancelsTouchesInView = false
      view.addGestureRecognizer(tap)
   }
   @objc func dismissKeyboard() {
      view.endEditing(true)
   }
}

これで、viewDidLoad()でこの関数を呼び出すことができ、テキストのView / Field以外のビューの任意の場所をタップすると、キーボードが非表示になります。


  1. iOS 10.0.2でホームアプリを使用する方法は?

    iOS 10.0.2のHomeアプリを使用すると、AppleのすべてのHomeKit製品を1か所から集中管理できます。 Homeアプリは、すべてのAppleスマートホーム愛好家が必要とするツールです。このガイドでは、Homeアプリの基本的な使用方法と、AppleHomeKitアクセサリを家に統合する方法について説明します。 iOS 10.0.2でホームアプリを設定するにはどうすればよいですか? HomeKitアクセサリを好みに合わせてカスタマイズする前に、Homeアプリをセットアップし、デバイスを統合する必要があります。これにはiOS10以降が必要になるため、続行する前に更新し

  2. iOS 11 でポッドキャスト アプリを使用する方法

    Apple はついに、自社の Podcast アプリを一新する必要があることに気づき、iOS 11 によって新しい命が吹き込まれました。待望のアプリのビジュアル アップデートは魅力的で、ポッドキャストを簡単に追加して聞くことができます。さらに、これに加えて、あなたの好みを知るようになると、いくつかのポッドキャストもお勧めします.新機能は作成者とユーザーの両方を対象としています。 革新的なタブのデザイン アプリを起動して最初に気付くのは、アプリの下部に追加された 4 つの新しいタブです。 4 つのタブは、Listen Now、Library、Browse、Search です。 [検索] タブに