Category Note

Objective-C:シェイクジェスチャーを実装する

シェイクジェスチャーを実装するためには UIViewController クラスのサブクラスをファーストレスポンダーに設定する必要がある。 シェイクジェスチャーの実装方法 UIResponderクラスのcanBecomeFirstResponderメソッドをオーバーライド 現在のViewをFirstResponderにする イベントメソッドをオーバーライド まとめ シェイクジェスチャーで色々とやってみたいところですが、Appleではシェイクジェスチャーは基本的に何かの選択をキャンセルしたり、シェイクするという動きそのものに関連性のあるアクションを定義することを推奨しています。 関連する項目 Objective-C:スワイプ・長押し(ロングプレス)ジェスチャーを実装する Objective-C:リモートコントロールイベントを実装する

Xcode:シンタックスハイライト・コードサジェスト(補完候補)が出なくなった場合の対処法

1つのアプリに対して、プロジェクトファイルのコピーによるバージョン違いのプロジェクトデータが複数あり、突然コード補完候補がでなくなった。そのときの解決方法をメモ。 コードサジェストが出なくなった場合の対処法 [Xcode] Window > Organizer > Project > Derived Data / Delete をクリック 何やらたくさんのDerived Dataが溜まっている様子。 この際リポジトリも全削除。

Objective-C:addSubViewしたSubViewの順番を変更する

addSubView した SubView の重なり順を変更するときのメモ。 SubViewの順番を変更する self.viewにsubControllerを加え、self.viewの最前面へ self.viewにsubControllerを加え、self.viewの最背面へ まとめ 最前面と最背面ではメソッド名が「Front」と「Back」だけの違いでなく、「bring」「send」となっているので注意。

Xcode:プロビジョニングプロファイル修正→ビルドは成功するのに実機に転送されない

iOS Provisioning Portalでプロビジョニングプロファイルを一度削除・再作成すると、以前は実機での動作確認出来ていたアプリが転送できなくなった。そのときの解決方法をメモ。 アプリが実機に転送されなくなった場合の解決方法 厳密に言えば、アプリのデータ自体には問題がないため、ビルドは成功するのだが、 [Xcode] とアラートウインドウが出現し、転送がストップしてしまう。

Objective-C:NSNotificationCenterでアプリ起動・終了時にメソッドを呼び出す

アプリ終了時に実行したい処理がある場合は、NSNotificationCenter を使う。 NSNotificationCenterのサンプルコード アプリが終了する直前に myFunction を実行 その他の通知タイミング UIApplicationDidBecomeActiveNotification アプリがアクティブになったとき UIApplicationDidEnterBackgroundNotification アプリがバックグラウンドになる時 UIApplicationDidFinishLaunchingNotification アプリケーションが起動した直後 UIApplicationWillEnterForegroundNotification アプリがアクティブになる直前 UIApplicationWillResignActiveNotification アプリがアクティブで無くなる直前 UIApplicationWillTerminateNotification アプリが終了する直前 UIApplicationWillChangeStatusBarOrientationNotification デバイスの向きが変わる直前 UIApplicationDidChangeStatusBarOrientationNotification デバイスの向きが変わった後 まとめ アプリの状態に合わせて処理を行いたい場合には NSNotificationCenter は必須のオブジェクトですね。

Objective-C:UIAlertViewの使い方

リリースにも、開発時のデバッグにも使える UIAlertView の使い方。 UIAlertViewの使い方 インスタンス生成時に初期設定を行う

Objective-C:現在表示中のViewを一時的に切り替える方法

現在表示中の View から、一時的に View を切り替えたい時がある。画面遷移とまではいかない、ライトな画面切り替えの実装方法をメモ。 表示中のViewを切り替える 選択肢は次の2通り。 新規に UIView を作成し現在の View に addSubView する UIViewController メソッドの presentModalViewController で現在の View を切り替える 前者は、現在のViewに表示中のオブジェクトを残しつつ、新しいViewを載せる、後者は、現在の View を一時的に破棄し、新しい画面を表示する、と考えればいいと思う。 ウェルカムスクリーンや、一時的なヘルプ表示なら、presentModalViewController メソッドの方が、実装が簡単で便利。 使い方は以下のとおり。 もしくは、以下のように生成時にインスタンスを autorelease プールに入れておくと、modalView を破棄したら自動的にインスタンスも開放される。 表示中のmodalViewから、元の View に戻るには を実行する。 まとめ このやり方を知るまでは、ずっと addSubView していた。。

Objective-C:UIImageView 画像表示サイズ設定(UIViewContentMode)の一覧

コードサジェストされても、忘れがちな UIViewContntMode の中から使用頻度の高いものだけをピックアップ。 UIViewContentModeの一覧 UIImageViewを生成 UIImageViewサイズいっぱいに表示(デフォルト) 画像のアスペクト比を維持しUIImageViewサイズに収まるように表示 画像のアスペクト比を維持しUIImageViewをはみ出して表示 UIImageViewサイズいっぱいに表示、矩形領域を変更する度に最描写する 画像サイズをそのまま、中央寄せ まとめ UIViewContentMode はデフォルト設定のまま使用することが多いものの、AVFoundation を使ったカメラ関連の画像処理を行う場合や、画面の背景画像等の設定時にお世話になりますね。

C++:Mac OS Xターミナルからcppファイルをコンパイルし実行する

Xcodeを使うまでもないちょっとしたC++のテストファイルをテキストエディタで作成し、ターミナルでコンパイルと実行をしたい場合のメモ。 ターミナルからcppファイルをコンパイルする ターミナルを起動する コンパイルしたいcppファイルのある階層まで移動する 以下のコマンドを入力する(コンパイルしたいファイルがtest.cppの場合) 生成されたa.outを出力する まとめ MacだとXcodeをインストールしていればgccコンパイラが使用できるので楽ですね。

Objective-C:UIScreenでデバイスの画面サイズを取得する

アプリを作る上で避けて通れない画面サイズ。UIScreen を使えば2種類のサイズを取得することができる。 画面サイズを取得する デバイスのスクリーン領域を取得(画面サイズ) ステータスバーを考慮したスクリーン領域を取得(ステータスバー表示ならステータスバー領域がマイナスされる) まとめ アプリ画面のUIが完全に固定されているなら mainScreen を、ある程度柔軟に設計されているのであれば applicationFrame を使用する。

siro:chro 無料ゲーム SQN をリリースしました

img_sqn_00

sirochro 初の無料ゲームアプリ SQN をリリースしました。
記事:SQN: iOS 無料ゲームアプリ SQN - Sequential Numbers をリリース
ちょっとした時間に楽しめる完全無料のゲームなっていますので、是非ダウンロードして遊んでみてください。

↓SQN のダウンロードはこちらから