0

私のような質問をいくつか見ましたが、それらはまったく異なります。私はiPadアプリケーションを作成し、それが機能するたびにEndEvent bevorで作業しました。しかし、最新の星座ではそうではありません。

ScrollView を含む ViewController があります。ScrollView 内で、別のビューをロードしています。ビューにはいくつかのテキストフィールドがあります。最初の問題は、テキストフィールドのタッチイベントが発生しないことでした。わかりました EditingDidBegin を呼び出して修正し、 view.EditingEnd(true) でキーボードを非表示にしました。EditingDidBegin は別の ViewController を呼び出します。

txtPosition.EditingDidBegin += delegate(object sender, EventArgs e) {
                                 View.EndEditing(true);
                                 selection = new SelectionViewController(lead, parent);
                                 parent.NavigationController.PushViewController(selection, true);
                                 selection.CreatePositionTable();
                               };

キーボードが表示される前にビューで通常のテキスト ボックスを使用すると問題が発生し、上記のテキスト フィールドをヒットしてもキーボードが消えません。任意の要素で EndEditing メソッドを呼び出そうとしましたが、ロードされた新しいビューにキーボードがまだ残っています。ユーザーでさえ、キーボードの非表示ボタンをクリックしてキーボードを非表示にすることはできません! バグのように感じます...私のような質問でresignFirstResponderソリューションも使用しようとしましたが、キーボードを非表示にすることはできません。

誰かが私を助けてくれることを願っています。

PS:スクロールビューの外にあるテキストフィールドを使用してビューを呼び出すと、すべて正常に動作します...

4

1 に答える 1

0

キーボードを非表示にするには、通常、次を使用します。

yourTextField.ResignFirstResponder()

とはいえ、正直に言うと、あなたがやろうとしていることには少し混乱しています。でキーボードを非表示にしたいのはなぜEditingDidBeginですか?

于 2012-09-06T12:03:12.687 に答える