0

UITableViewController、一連のセクションと行があり、各行に対して、行自体に右揃えでサブビューとしてUITextFieldを追加しました。

ユーザーが行をタップした場合、indexPathをローカルに保存し、対応するテキストフィールドを最初のレスポンダーにします。最後に、キーボードが表示されたら、テーブルビューをスクロールして、行が表示されたままにします。

ユーザーが代わりにテキストフィールドをタップしたときに同じ動作を取得するという問題に直面しています。この場合、didSelectRowAtIndexPath:メソッドは呼び出されないため、「選択された」行が引き続き表示されるようにテーブルビューにスクロールするように指示する方法がわかりません。

おそらく、プロセス全体が正しくありません。あなたはそれを解決する方法を知っていますか?

どうもありがとう!

4

1 に答える 1

1

これについては絶対にわかりませんが...

userInteractionEnabledのプロパティをに設定しUITextFieldますNO。このように、タッチはコントロールを「通過」し、をタップしUITableViewCellます。didSelectRowAtIndexPath:が呼び出されたら、のuserInteractionEnabledプロパティをに設定UITextFieldしますYES。編集が完了したら、に戻しNOます。

于 2011-05-07T20:55:37.653 に答える