iPadのUIModalPresentationFormSheetでキーボードが閉じない
iPadでUIModalPresentationFormSheet(全画面ではなく、中央にフロートしてモーダル画面が表示される)場合に起こる不具合で、画像のような状態でDoneボタンを押してresignFirstResponderを実行してもキーボードが閉じないというものがある。
iPadとソースが共有でも、iPhoneだときちんと閉じる(FormSheetじゃないので)。
不具合なので治ってほしいが、とりあえず対応しないと不便この上ない(ちなみに、ModalViewController自体を遷移させればちゃんと消える)。
対応としては、このViewControllerの.mファイルに以下のコードを足してやる。UINavigationControllerにカテゴリを指定してメソッドを1つ追加する。
メソッド名を見れば分かる通り、自動でキーボードを閉じてよいか、というメソッドなのだが、iPadでやるとこれがYESで帰ってくるというとんでもない状態になってるらしい。
@implementation UINavigationController(KeyboardDismiss) - (BOOL)disablesAutomaticKeyboardDismissal{ return NO; } @end
関連記事
-
-
UIAutomation関連覚書
割りと忘れがちなので、自分用備忘録を兼ねて、UIAutomationに関連するtips的なものをまと
-
-
メソッドの呼び出し元を調べる
特定のメソッドに関して、そのメソッドをコールしているメソッド群を調べるための手順。 (1)調べたい
-
-
Xcode5.1のInterfaceBuilderにおける地味な変更点
iOS7.1に合わせてXcode5.1がリリースされました Xcode Release N
-
-
NSStringのフォーマット書式
Appleのページになく、IEEEのprintfフォーマットのページにあるので、C言語と親しくしてな
-
-
ソースコードからStoryboardにアクセスする
複数のStoryboardを利用して、自分以外のStoryboardに遷移させるような展開をしたい場
-
-
CALayerの管理
CALayerはNSKeyValueCodingを実装している(Core Animation Ext
-
-
Bitbucketの画面の日本語化/コミット時に同時プッシュを行う
前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus
-
-
App Storeのページにアプリケーションから直接アクセスする方法
去年(2013年)の秋ごろ、iOS7の出始めの時期に書かれたblog記事などを参考にすると、iOS6
-
-
アプリ内で自動スリープの設定を無効化する
「設定」アプリ内で設定したスリープ時間設定を無効にするためのコード。 アプリがバックグラウンドにな
-
-
WSCoachMarksViewをSwiftで使う場合の手順
Objective-Cで記述されてるライブラリ全般に当てはまることもあるんですが、個別でやることも含
- NEXT
- plistファイルに色を入れる