西海岸より

つらつらざつざつと

iOS

UITabbarの真ん中のタブボタンに大きな画像を使う方法

こんな感じでタブのボタンを表示する方法 真ん中のタブボタンを強調(抜粋) idev-recipes / RaisedCenterTabBar https://github.com/boctor/idev-recipes/tree/master/RaisedCenterTabBar デフォルトでUITabbarController、UITabbarに上記を実現するための方…

エキスパートObjective-Cプログラミング iOS/OS Xのメモリ管理とマルチスレッド

前から気になっていたこの本。早速購入して読んでみた。 話題としては以下の3つで、iOS4以降の新しい機能ばかり。 Automatic Reference Counter (iOS5〜) Block(iOS4〜) Grand Central Dispatch(iOS4〜) 感想としては、どの章も順を追った丁寧な説明がされて…

UIWebView上での動画再生通知(QuickTime起動)を受け取る方法

UIWebView上で、動画リンクタップ時やvideoタグ利用時に動画が再生されますが、その再生開始、再生終了の通知を受けとる方法。これもNSNotificationCenter使って実装できます。 //プレーヤ開始時(フルスクリーン状態になった時) [[NSNotificationCenter defa…

iOS5で特定のディレクトリをバックアップ対象外とする方法

特定ファイル、ディレクトリをバックアップ対象外とする方法 エントリアプリのiOS5のアップデート対応でも記述した通り、iOS5からはDLファイル等の大容量ファイルをバックアップ対象としてはいけないポリシーとなりましたが、それを受けてかiOS5.0.1よりDocu…

ゴミ箱アニメーションサンプル

ゴミ箱アニメーション(Viewがゴミ箱に消えていくイメージのアニメーション)に関するメモ。ゴミ箱のアニメーションを実装する必要があって、色々調べていたところ、iPhoneアプリのメモアプリで利用されている"SuckEffect"というものが使えそう。 ゴミ箱アニメ…

iPhoneアプリビルドのシェルスクリプト

iphoneアプリのビルドを行うシェルスクリプトのメモ。配置場所は、プロジェクトファイル(PJ_NAME.xcodeproj)と同じ階層で、実行するとアプリをReleaseモードでビルドし、adhoc配布やエンタープライズ用のipaのファイル作成まで行う。 build.sh #!/bin/bash #…

デバイスの向きの設定と取得の方法

デバイスの向きに関することを調べたのでメモ。 Info.plistでアプリがサポートする向きを設定 [プロジェクト名]-Info.plistを編集し、以下の項目でアプリがサポートする向きを設定でき、サポートする向きを複数指定可能。 Supported interface orientations …

CoreDataの罠-マイグレーションマッピングファイルの選択条件

アプリのアップデート時に、マイグレーションが必要になって実装時にはまったところのメモです。マイグレーション時にマッピングファイルが適切に選択されないという現象に悩まされました。 マイグレーションとは アプリのバージョンアップとともに、CoreDat…

ASIHTTPRequestをiOS5でビルドしたら一部宛先に対するhttps通信ができなくなった

現象としては、特定の宛先においてはすぐに通信タイムアウトが返ってきてしまう。 デバッグでエラーを見ると、(OSStatus error -98XX) が出ており、 過去だけれど関連する記事があった。 https://github.com/pokeb/asi-http-request/issues/132どうやらSSLの…

UUIDの取得方法

iOS5より、UDIDが禁止になったので代わりにUUIDを使えと。。 + (NSString*) UUIDString { CFUUIDRef uuidObj = CFUUIDCreate(nil); NSString *uuidString = (NSString*)CFUUIDCreateString(nil, uuidObj); CFRelease(uuidObj); return [uuidString autorelea…

UIAlertViewのキャプチャー画像を出力

UIAlertViewのキャプチャ画像を取得するコードメモ。 出力例 (本当は透過あり) AlertCaptureViewController.h #import <UIKit/UIKit.h> @interface AlertCaptureViewController : UIViewController @property (nonatomic, retain) UIAlertView *alertView; @end AlertCaptur</uikit/uikit.h>…

Xcodeのソースのヘッダーの氏名、会社名を変更する方法

以下のファイルを開く(Xcode) ~/Library/Preferences/com.apple.Xcode.plist 以下の項目を追加 PBXCustomTemplateMacroDefinitions (Dictionary) FULLUSERNAME (String) -> 個人名 ORGANIZATIONNAME (String) -> 組織名 参考 http://cocoa.synck.jp/12368224…

Objective-CのCSVパーサ

CSVをパースしてくれる便利なクラスのパースライブラリがあったので、メモ。""囲いにも対応。 Writing a parser using NSScanner (a CSV parsing example) http://cocoawithlove.com/2009/11/writing-parser-using-nsscanner-csv.html サンプルは以下よりダ…

iPhoneアプリ開発への道

新しくiPhoneアプリ開発を始めるためにどういうステップがよいか、考えてみたので簡単にまとめてみました。 ※あくまで個人的な経験を元に書いてますので、その点ご了承ください。 ※ゲーム開発はターゲットにはしていません。 役立つスキル iPhoneアプリ開発…