2016-06-27 6 views
0

ここで問題はありません:私は、ラベルやイベントなどのオブジェクトからキーボードを捨てたり、RETURNキーや画面の他の領域をタップすると、多くのことを読んだことがあります。しかし、ボタンの中からキーボードを消すコードはありますか?私は、私のボタンのコードの終わりにResignFirstResponderの様々な方法を試しましたが、成功しませんでした。数字のキーボードを消す

どのような援助もありがたいです。私はこのすべてに新しいことを覚えておいてください。できるだけ具体的にしてください。

あなたは

+0

どのプラットフォームですか? iOS、macOS、tvOS? –

+0

ボタンを押してキーボードを閉じますか?それはどういう意味ですか?キーボードがボタンにありますか、そのボタンを押したときにキーボードを消したいのですか? – Dershowitz123

+0

申し訳ありません - プラットフォームはiOSです。私のプログラムでは、「btnCalculate」というボタンを定義しました。このボタンは、2つのテキストフィールドからのユーザー入力に基づいて計算を行います。ユーザーが "btnCalculate"ボタンを押すと、計算を行い、キーボードを消して結果を表示したいと思います。 "btnCalculate"関数内のコードを使用してキーボードを閉じることができる以外は、すべて動作しています。 - ありがとう – CNE

答えて

1

あなたはそれが最初の応答者を辞任し、キーボードを閉じ作るために、最初の応答者、またはそのいずれかのスーパーにあるテキストフィールドにendEditing(_:)を送ることができますありがとうございます。ウィンドウが表示され、すべての他のビューのスーパービューで、への参照を取得するのは簡単です:

@IBAction func calculateButtonWasTapped(sender: AnyObject?) { 
    view.window?.endEditing(true) 

    // perform calculation here 
} 
+0

これは働いた!解決策と説明の両方に感謝します。 – CNE

0

単なるテキスト・フィールドがtheTextFieldと呼ばれていることを言うと、押されたときUIButtonが実行レッツを@IBActionbuttonTapped()と呼ばれます。

class ViewController: UIViewController { 

    @IBOutlet var theTextField: UITextField! 

    @IBAction func buttonTapped(sender: AnyObject) { 
     theTextField.resignFirstResponder() 
    } 
} 
+0

ありがとうskunkmb。しかし、これはまた、いずれもfirstResponderである可能性があるので、私はすべてのテキストフィールドに対して "resignFirstResponder"を持たなければなりません。 「end.Editing(true)」では、作成するエントリが1つしかありません。しかし、あなたのソリューションに感謝します。これを実験することで、このトピックの理解を深めることができます。 – CNE

関連する問題