読者です 読者をやめる 読者になる 読者になる

UITableViewのdelegateは設定したインスタンスのdealloc内でnil挿入したほうがいい

iOS

タイトルのままなんだけど、UITableViewのdelegateのproperty属性はassignになってる。なので、delegateのインスタンスが開放されても、delegateにnilが挿入されないので、EXC_BAD_ACCESSみたいになってアプリがクラッシュする。 ので、assign参照のproperty…

UITableViewCellの画面内のframeを取得する

iOS

// UITableView内のrect CGRect rectInTableView = [tableView rectForRowAtIndexPath:indexPath]; // UITableView内のrectをrootViewのrectに変換する [tableView convertRect:rectInTableView toView:rootView];

SpriteKitでAngryBird風のゲームを作るチュートリアル

iOS

SpriteKitだと物理エンジンを使ったゲームがcocos2dと比べて非常に簡単に作れるっぽかったので、AngryBird風のゲームを途中まで作ってみました。 別の人がQiitaで画像/動画付きのチュートリアルを上げてるので、文字ばっかなのが苦手な人はこちらをどうぞ。i…

KoboldKitでOrientationを設定しようとすると落ちる

iOS

KoboldKitのProjectTemplateだと、Orientationが横画面になってるんだけど、縦画面にしようとするとクラッシュするのの対応。 XcodeでOrientationの設定を変えた後、ViewControllerに下記を追加する。 - (BOOL)shouldAutorotate { return NO; } 参考 How do …

はてなブログに投稿できるMarkdownエディタ作りたい

iOS

gin0606/HatenaBlogAtomClient · GitHub podspec書くたびに辛いって思う。 Objective-Cからはてなブログにエントリ投げるところまで書けたから、OSXのアプリ作るの練習する。 その前にMarkdownをHTMLに変換するやつも書いてみたいと思ったので書きたい。

はてなブログのAtomAPIクライアントみたいなの書いてる

iOS

gin0606/HatenaBlogAtomClient · GitHub はてなブログに投稿できるMarkDownエディタ欲しいなーと思って、探してみたら無くてOSXのアプリ作れるようになったら便利だろうしーと思って作ってる。 はてなブログのAtomAPIは2013/09/14リリースと言うことで、ライ…

Kiwiの非同期テストでまたハマった話

iOS

[[expectFutureValue(dict) shouldEventually] beKindOfClass:[NSDictionary class]]; こんな感じで非同期処理から返ってきた値の型を確かめたかったんだけど、間違ええて↓こんな感じで書いてたらテスト通ってハマった [[expectFutureValue(dict) shouldEven…

Objective-Cでmethodの呼び出しに`.`を使いたくないって話

iOS

Objective-Cはメソッドに.でアクセス出来るんだけど、個人的には好きじゃないし、コード読む上でも紛らわしいから良くないと思っている。 -(void)hoge; ってメソッドがあったら [self hoge]; と self.hoge; の2つの方法でメソッド呼び出し出来る。 前者につ…

GitHubで見つけたライブラリのバグ修正をして初めてPull Requestを送ったら無言でcloseされてた話

iOS

iOSのTableViewでドロップダウン可能なセルを実装する必要があった。恐らく既存の何かが有るだろ―って思って探してたんだけど、見つけたコードswich地獄みたいな感じであんまりかっちょよくなかった。 そこで見つけたのがVPPDropDownってやつ。サンプルコー…

iOSのカメラでリアルタイムフィルターするのにCIFilterは向かないって話。

iOS

処理遅いっぽい。リアルタイムフィルターには向かないっぽいけど、画像にフィルター書けるのは、とても気軽に出来る。 リアルタイムにフィルターかけるのはGPUImageが爆速らしいので、後日触る。 カメラの起動 AVFoundationでカメラを表示するとても短いサン…

iPhoneシミュレータに入ってるアプリを消す

iOS

rm -rf ~/Library/Application\ Support/iPhone\ Simulator/*/Applications/* 最初の*はシミュレータのOSバージョンで、次の*はApplicationsの中身全部指定してる。 実機みたいにアイコン長押ししても消せる。

CocoaPods で GHUnit と OCMock を追加してエミュレータで動かそうとしたら Linker Error が出た

iOS

CocoaPodsでGHUnit + OCMockなiOS開発環境を構築する - mtgto's diary CocoaPodsの導入からGHUnitとOCMockのinstallとかは↑これを参考にして作業しました。実機ビルドは普通に通るのに、エミュレータだと通らなかったので困った。解決法は、Linked Framework…