*

iPadのUIModalPresentationFormSheetでキーボードが閉じない

公開日: : 最終更新日:2014/02/24 Tips , , ,

iPadでUIModalPresentationFormSheet(全画面ではなく、中央にフロートしてモーダル画面が表示される)場合に起こる不具合で、画像のような状態でDoneボタンを押してresignFirstResponderを実行してもキーボードが閉じないというものがある。
iPadとソースが共有でも、iPhoneだときちんと閉じる(FormSheetじゃないので)。

daa149e0e53849b590884306dc062030

不具合なので治ってほしいが、とりあえず対応しないと不便この上ない(ちなみに、ModalViewController自体を遷移させればちゃんと消える)。
対応としては、このViewControllerの.mファイルに以下のコードを足してやる。UINavigationControllerにカテゴリを指定してメソッドを1つ追加する。
メソッド名を見れば分かる通り、自動でキーボードを閉じてよいか、というメソッドなのだが、iPadでやるとこれがYESで帰ってくるというとんでもない状態になってるらしい。

@implementation UINavigationController(KeyboardDismiss)
- (BOOL)disablesAutomaticKeyboardDismissal{
    return NO;
}
@end

参照サイト:
http://d.hatena.ne.jp/io_o/20110518/1305708349

関連記事

UISegmentedControlに見栄え良く背景色を設定する

UISegmentedControlをiOS7で使おうとすると、基本の背景色が「透明」になりますが、

記事を読む

WSCoachMarksViewをSwiftで使う場合の手順

Objective-Cで記述されてるライブラリ全般に当てはまることもあるんですが、個別でやることも含

記事を読む

実機テストしたときのデータを取り出す

Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下

記事を読む

UICollectionViewが画面回転した時にレイアウトが崩れた時の対応

UICollectionViewCellのサイズを、内容に合わせて動的に変えた時に起こる問題に関して

記事を読む

”No Scheme”になってしまった場合の対応

知人がXcodeで突然「No Scheme」表示になってRunするターゲットとデバイスが選択できない

記事を読む

UISplitViewControllerの仕切り線の色を設定

UISplitViewControllerで、iPadを横向き(Landscape)にしたときの2つ

記事を読む

CoreDataのソートとsectionNameKeyPathの関係

CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam

記事を読む

User Defined Runtime Attributeについての覚書

UILabelに上下左右のパディングをつける方法を探して、結局「自分で以下のようなメソッドを持った拡

記事を読む

plistファイルに色を入れる

plistファイル中にUIColorを入れたい!という場合。普通RGBAの値を数値で入れるとかするけ

記事を読む

Xcode8で余計なログを抑制する

Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑