*

UIAlertのTextFieldでキーボードが表示されない(iOS7)

公開日: : cocos2d-x, iOS

TextField付きのUIAlertViewでたまにキーボードが表示されないことがあり、

ながらく原因がわからず悩んでいました。


 view.alertViewStyle = UIAlertViewStylePlainTextInput;

最初は、複数のUIWindowを使っていたのでmakeKeyAndVisibleの使い方に

問題があると思っていたのですが、実際の原因は画面回転の指定ミスでした。

UIKeyboardNotification


    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(onUIKeyboardNotification:)
                                                 name:UIKeyboardWillShowNotification object:nil];

キーボード関連のNotificationは通知されていたのでUIWindow(KeyWindow)の問題ではないと

わかったのですが、デバッガで通知内容を確認すると


UIKeyboardFrameBeginUserInfoKey = {{inf, inf}, {0, 0}}

おかしな値になっています。これだ。

画面回転

UIKeyboardFrameBeginUserInfoKeyとinfでぐぐると

iOS7だけでたま発生するという同じ症状の方が見つかり、

対処方法ものっていました。


-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskPortrait;
}

-(BOOL)shouldAutorotate
{
    return NO;
}


-(BOOL)shouldAutomaticallyForwardRotationMethods
{
    return NO;
}

画面回転の指定方法に問題があったようです。

私のアプリはPortrait固定ですが、内部的には

UIViewControllerの座標変換で問題が起きていたのかも。

参考


  • Keyboard not displaying from UITextField

  • iOS開発におけるウィンドウ「UIWindow」の知られざる活用方法とは? #iOS
  • Sponsored Link

    関連記事

    icloud.jpeg

    アプリからiCloudを使うための準備

    iOSではアプリがiCloud上にデータを保存するための仕組みが提供されている。 iCloudは

    記事を読む

    4300d3f14f7f754c5b2cd5b720efb39f.png

    cocos2dxでマルチスレッド

    cocos2dxでマルチスレッドをいじったときのメモ あらかじめautoreleaseに

    記事を読む

    ace.png

    イーモンv2.3申請

    やっとv2.2がリリースされ、本日v2.3をAppleに申請しました。 v2.3の主

    記事を読む

    emon_banner_small.png

    eMon

    eMonのプレイ動画をアップロードしました。 なぞって、つなげて回答するシステムが

    記事を読む

    ad9a17c91d332c899c5fec4c70e6ef3a.png

    [Mac]cocos2dxをeclipseでビルド

    Androidの開発環境をセットアップでEclipse ADTをインストールしました。 Ma

    記事を読む

    emon.png

    【イーモン】v1.5リリース

    やっとv1.5リリースできました。 継続的にプレイを続けてもらえるように ゲームのバランス

    記事を読む

    Screenshot-2013.11.14-03.18.26.png

    Cocos2d-xでGaussianBlur(ぼかしフィルター)

    cocos2d-xにGaussianBlurが見つけられず、ググっていたらサンプルをみつけまし

    記事を読む

    sola.png

    アプリからFormDataを送信する

    HTMLのformタグを使うとHTTPリクエストにkey=valueの形式で任意のデータを付加して送

    記事を読む

    teach_s.png

    English Monsters1.0がAppStoreの審査通過

    English Monsterが遂にAppStoreで公開されました。 一度AppStor

    記事を読む

    internet_share.png

    インターネット共有のステータスバーを表示させない

    私の作っているアプリではcocos2d-xでCCEAGLViewを表示させるUIViewCo

    記事を読む

    Sponsored Link

    Message

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    Sponsored Link

    • 発音辞書イーモン
    • English Monsters
    • sLog(時間管理アプリ)
    • 生粋のC++プログラマーです。 最近は、Objective-Cやxcode、cocos2d-xなどを学びながらiPhoneアプリを開発しています。

    Google+ Google
    PAGE TOP ↑