iPadで実行しています。 私はモーダルでView Controllerを提示しています。 MonoTouch.Dialogを使用して、テキスト入力フィールド、ボタンなどを表示します。 テキストフィールドをタップすると、キーボードがポップアップします。テキストフィールドの外側をタップすると、キーボードを却下したいが、それは消えないだろう。私はFormSheetとしてプレゼンテーションを行うときキーボードを無効にすることはできないと読んでいますか?あれは正しいですか?モーダルビューの場合にキーボードを解除するにはどうすればよいですか?
ここに私のコードです。セレクタは呼び出されますが、キーボードはそのままの位置にとどまります。テキストフィールドは作成されたdynamicallなので、私はResignFirstResponder()を呼び出すことはできません。代わりにビューを最初のレスポンダにしてから辞めることはできません。
public override void ViewDidLoad()
{
base.ViewDidLoad ();
UITapGestureRecognizer oTapRecognizer = new UITapGestureRecognizer ();
oTapRecognizer.AddTarget(this, new MonoTouch.ObjCRuntime.Selector("ViewTappedSelector:"));
this.View.AddGestureRecognizer (o);
}
[Export("ViewTappedSelector:")]
public void ViewTapped (UIGestureRecognizer sender)
{
this.View.BecomeFirstResponder ();
this.View.ResignFirstResponder ();
}
テキストフィールドはどのように作成されますか?ビューが最初のレスポンダーになることはできますか? –
テキストフィールドはMT.Dialogによって作成されます。私は何かが最初のレスポンダーになると思う...? BecomeFirstResponder()メソッドを提供している限り、私はそれを呼び出します。 :-) – Krumelur