2014-01-01から1年間の記事一覧
たとえば、次のようにcommunityとtopicにリレーションがあり、 RKEntityMapping *communityMapping = [RKEntityMapping mappingForEntityForName:@"HogeCommunity" inManagedObjectStore:managedObjectStore]; [communityMapping addAttributeMappingsFromDi…
読書再開しました。気になった点をメモがてらまとめます。 失敗から学ぶことは過大評価されている 失敗から学ぶ必要はない。してはいけないことについては学べるが、次になにをすべきかがわからない。一方で、成功から学ぶことは、次の手段を与えてくれる。…
Xcode6にしてからなにかと変更点が多くてヤキモキしております。 iOSシミュレータが表示されない場合は以下で解決します。 iOS Simulator -> Hardware -> Keyboard 「Connect Hardware Keyboard」のチェックを外します 以前はハードウェアもソフトウェアも両…
iOS8SDKの既知の不具合として認識されているようです。 iOS8SDKをiOS7上で動かしたときに発現します。 CellのcontentViewのサイズが変更されていないのが原因なので、UICellectionViewCellのサブクラスに以下のコードを追加して対応します。 - (void)setBoun…
文字列を暗号化する方法のメモ。今回は可逆暗号化が目的なのでblowfishを使います。 Security.frameworkが必要なので、Build Phasesで追加してください。 #import <CommonCrypto/CommonCrypto.h> // 文字列をblowfish暗号化する + (NSString *)encodeBlowfish:(NSString *)str { NSData *k</commoncrypto/commoncrypto.h>…
アプリ全体のデザインを崩さないためにも、アプリ内のWebViewでも積極的にカスタムフォントを使いましょう。 使用したいカスタムフォントがアプリ内に入っている場合とそうでない場合で方法が若干異なります。 (カスタムフォントがmplus-1c-medium.ttfの場…
iOSの違いでUIViewアニメーションの挙動が違うので注意が必要です。 とりわけ「iOS6では動くのにiOS7では動かない」といった状況に陥ります。 iOS7ではUIViewアニメーションに関して変更があり、viewがまだ表示されていない状態(viewDidLoad, viewWillAppea…
結局イタチごっこなのですが、、、脱獄対策のメソッドを書きました。 BreakThroughで脱獄回避のメソッドをすり抜けられちゃうので、BreakThroughそのもののチェックをしてみたり。 /* * 脱獄端末のチェック */ +(BOOL)isJailBreak { #ifdef DEBUG // デバッ…
ViewControllerがモーダルされたのかプッシュされたのか判定したい場合がしばしばあります。(例えば、モーダルのときは「閉じる」ボタン、プッシュのときは「戻る」ボタンに変更したいときとか。) if(self.presentingViewController != nil) { // モーダル…
単純にダイアログを表示するだけであればCCMessageBoxを使えばいいですね。 CCMessageBox("メッセージ", "タイトル"); ただ、ボタンのタイトルは「OK」で固定されてるし、delegateはnilで受け取れません。 そのため、ダイアログからさらにアクションを起こし…
Accounts.frameworkが必要です。 まあ、認証終わったあとにNSUserDefaultsにユーザIDなんかを保持しておくだけでもいい気がしますが、正式(?)な方法があるので一応メモしておきます。 ACAccountStore *accountStore = [[ACAccountStore alloc] init]; ACAcco…
ユーザとして、ダイアログが複数回出てくるのはかなりストレスに感じます。 UIAlertViewの表示チェックを行うことで、それを回避します。 -(void)showDialog { // ダイアログを表示中かチェックする for (UIWindow* window in [UIApplication sharedApplicat…
オブジェクトのZ値を変更したい場合、単純に int order = 100; node->setZOrder(order); としても変更されません。 一度addChildしたオブジェクトのZ値を変更する場合は、reorderChildを使って親オブジェクトから設定してやる必要があります。 CCNode* paren…
非ARCのプロジェクトにSBJsonなどのARC対応ライブラリを導入してビルドすると以下のようなエラーがでます。 This source file must be compiled with ARC enabled! Build Phases -> Compile Sources でCompiler Flagsを設定します。 エラーが出ている.mファ…
たとえば複数のオブジェクトをランダムでアニメーションさせたいときなどに、現在そのオブジェクトがアニメーション中の場合はキャンセルしたいです。 判定する方法はいたって単純。 void SampleScene::actionNodeAtRandom(CCNode* hogeNode) { if ( hogeNod…