2013-01-01から1年間の記事一覧

Objective-C で流れるようなインタフェース

Underscore.js にインスパイアされた Objective-C のライブラリ Underscore.m を試してみたんだけど、 その使い方にちょっと驚いた。 流れるようなインタフェースで書けるじゃないか。 例えば、公式ページのサンプル。 NSDictionary *dictionary = @{ @"en":…

Mac OS X の Finder でドットファイルを表示する方法

Mac

Mac OS X Mountain Lion の Finder はデフォルトだと、.vimrc のようなドットファイルを表示してくれない。 端末で次のコマンドを実行すれば、Finder でドットファイルを表示できるようになる。 $ defaults write com.apple.finder AppleShowAllFiles TRUE #…

iAd を画面下に固定する方法

UITableView を画面いっぱいに表示し、広告を画面下に表示するというのは、 よくある組み合わせだと思う。 このとき、UITableView をスクロールしても、広告は画面下に固定して、ずっと表示していたい。 ただし、Apple の審査に通るために、広告の取得に失敗…

CoreData で複数の条件で絞り込む方法

NSPredicate を作成して NSFetchRequest に設定する。これが基本。 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"price > %d", 1000]; [request setPredicate:predicate]; 値段と数量、といった複数の条件で絞り込みたい場合。 条件が固定…

銀座 天一 福岡岩田屋店

お昼の時間をとうに過ぎたけど、 諸事情で天神から離れることができないため、 天神で店に入ることにした。 どうせ行くならまだ行ってない店がいいってことで、 天丼のディスプレイに目を引かれた、 岩田屋新館の天一に入ってみた。 注文したのは 天丼 (1260…

海鮮居酒屋 博多TOC-TOC 博多駅店

料理が美味いから利用している居酒屋TOC-TOC、 美味いんだけど高い。 ランチ営業やっていれば、もっと頻繁に行くのに。 ってそういえば、博多駅のくうてんに出店している 店舗はランチ営業もやっていた。 ランチは夜と違うメニューで、中トロ塩炙り丼(1480円…

スキマ・テスト

先日 Bitbucket イシュートラッカーの iOS クライアント『Bitissue』をリリースした。 Bitbucket イシュートラッカーの iOS クライアント『Bitissues』をリリース - present iPhone から手軽にイシューを登録できるようになったので、 通勤・帰宅の電車の中…

iPhone5 の電源ボタンが効かなくなったので AssistiveTouch でしのいだ

先月くらいから iPhone5 の電源ボタンが効かなくなってきた。 Apple Care+ には入っているから修理はできる。 ただ、2年の保障期間内で 2 回までしか安く修理できないし、 安いといっても修理に 4400 円かかるから、 まだ修理に出したくない。 …ってなんか 7…

iOS で FontAwesome を使う方法

はじめに Inkscape でツールバー用のアイコンを作成していたけど、 すべてのアイコンで通常用とRetina用の2種類作成する必要があってウンザリ。 アイコンが必要になるたび思う。 「FontAwesome みたいなアイコンフォントが使えれば」って。 FontAwesome+iOS …

Bitbucket イシュートラッカーの iOS クライアント『Bitissues』をリリース

初めての iOS アプリ『Bitissues』をリリースしました。 http://tnakamura.bitbucket.org/bitissues/ 開発に1ヶ月、審査に出して Ready for Sales になるまで10日、ようやくリリースに漕ぎ着けて一安心。 Bitissues は Bitbucket のイシュートラッカーに iPh…

SVProgressHUDでインジケーターを閉じるときの注意

SVProgressHUD は // インジケーター表示 [SVProgressHUD showWithStatus:@"Sending..."]; // 終了 [SVProgressHUD dismiss]; というコードで簡単にカッコいいインジケーターを表示できて重宝してる。 ただ、普段インジケーターを閉じるのに dismiss を使っ…

AFHTTPClient の getPath が送信するリクエストのクエリ文字列で試行錯誤した話

AFHTTPClient の getPath に [client getPath:@"user/tasks" parameters:@{ @"status": @[@"completed", @"new"] } success:^(AFHTTPRequestOperation *operation, id responseObject) { } failure:^(AFHTTPRequestOperation *operation, NSError *error) { …

Web サービスの iOS クライアントをレビューに出すときはレビュー用のアカウントを用意する必要あり

Web サービスの iOS クライアントをレビューに出すときは、 レビュー用のアカウントを用意しなければいけないみたい。 @t_nakamura必要ですよ。申請する際のApp Review InformationのReview Notesの欄にレビュー用アカウントのIDとパスワードを記載しておけ…

Objective-C で動的にメソッドを追加する

Objective-C でも、Ruby みたいに動的にメソッドを追加することができた。 ということは、Objective-C でもメタプログラミングができるね。 今のところ、セレクタを引数に受け取るメソッドのテストで重宝している。 #import "MyTests.h" #import <objc/runtime.h> @implement</objc/runtime.h>…

星期菜

食べログのラーメンランキング(福岡市街)で上位の、 博多区須崎町にある『星期菜』に行ってみた。 ランチメニューの『チャーシューと葱の香り汁そば』と『四川風肉みそご飯』セット(650円)を注文。 『チャーシューと葱の香り汁そば』は、あっさりした上品な…

なす豚や

こう猛暑日が続くと夏バテしてしまい、 食事も素麺や冷やし中華といった、冷たいものにどうしても手が伸びてしまう。 さすがに不健康。スタミナを付けなければ。 スタミナを付けるなら豚肉でしょ、ってことで薬院にある『なす豚や』に行ってみた 店名にもな…

ViewController でナビゲーションバーの戻るボタンがタップされたかどうか判定する方法

viewWillDisappear の中で、ナビゲーションコントローラーの管理下に自分自身が含まれているかチェックし、含まれていなければ戻るボタンがタップされたと判断できた。 - (void)viewWillDisappear:(BOOL)animated { if ([self.navigationController.viewCont…

備長の上ひつまぶし

これまでの人生で、ひつまぶしを食べたことがなかった。 博多ひつまぶしという、似て非なるものは食べたことがあったけど。 鰻が食べ尽くされるまでに一度は食べておきたい。2年くらいずっと思っていた。 どうせ食べるなら本場のひつまぶしがいい。ただし名…

虫歯の治療で金払って痛い思いをしてようやく虫歯予防の大切さを実感した話

食事中に奥歯の詰め物がとれたんで歯医者にいったら、 銀歯で詰めるついでに虫歯も治したほうがいいと言われた。 あれから1ヶ月、先日ようやく治療が終わった。 必要なこととはいえ、お金払った上で痛い思いする理不尽さに、 治療の帰りは心が荒んだものだ。…

OCMock を使って AFHTTPClient のサブクラスをテストする

例えば、AFHTTPClient を継承したカスタムクライアントがあるとする。 #import <Foundation/Foundation.h> #import <AFNetworking/AFHTTPClient.h> @interface TodoClient : AFHTTPClient - (void)getTodoList:(void(^)(NSArray*))success failure:(void(^)(NSError*))failure; @end #import "TodoClient.h" @implem</afnetworking/afhttpclient.h></foundation/foundation.h>…

AFNetworking でベーシック認証に対応する方法

久しぶりの Objective-C。 定番通信ライブラリ『AFNetworking』で、ベーシック認証が設定された Web API にアクセスする方法を README や Github の Wiki で調べてみた。 さっぱりわからない。 仕方ないので、ソースコード読んだり、StackOverflow 漁ったり…

レーダーチャートを描画したかったので Chart.js を試してみた

レーダーチャートを表示したいんだけど、 これまで Rails で使ってきた lazy_high_chart はどうも対応していないっぽい。 最近、JavaScript ライブラリをラップした gem を使うことに抵抗が出てきたので、 lazy_high_chart を使うのはやめて、他のライブラリ…

Testem + Mocha + Chai で JavaScript のテスト

Rails アプリの JavaScript のテストは、 Konacha 使うのをやめて、Mocha を直接使っている。 Mocha は HTML サポートしているんで、 TestRunner.html 作ってブラウザで表示すればテストが実行され、 お手軽だ。 ただ、複数のブラウザでテストする場合、ブラ…

Grunt で Hogan.js のテンプレートをコンパイル

CoffeeScript と Sass のコンパイルを Grunt で行うようにしたら、 ついでに Hogan.js のテンプレートもコンパイルしたくなるのは仕方ないよね。 人として。 Grunt のタスクをインストール Grunt の contrib タスクには Hogan.js 用のタスクがあるので、npm …

Grunt で CoffeeScript と Sass をコンパイル

最近、Rails の CoffeeScript や Sass のコンパイルをアセットパイプラインではなく Grunt でやりたくなったんで、Grunt を試してみた。 まず Grunt をインストール。 npm install -g grunt-cli CoffeeScript と Sass をコンパイルするタスクは Grunt 公式の…

Rails で JavaScript テンプレートの Hogan.js を使う

はじめに JavaScript テンプレートには backbone-rails がデフォルトでサポートしている EJS を使っていたけど、 backbone-rails 使うのやめたから EJS をあえて使う理由が無くなった。 自分の観測範囲内だと、JavaScript テンプレートでは Hogan.js と Hand…

ピッツェリア ダ ガエターノ

週末、無性にしょっぱい物が食べたくなった。 具体的にいえばチーズ。 そういえば、薬院に有名なピザの店があることを以前チェックしていたな。 その名も「ピッツェリア ダ ガエターノ」。 思い立ったが吉日ということで、豪雨の中行ってみた。 開店直後、し…

backbone-rails から Bower+Backbone.js に移行

はじめに Rails で Backbone.js を使ってアプリを開発するときは、決まって backbone-rails を使っていた。 codebrew/backbone-rails …んだけど、Backbone.js の v1.0.0 が出たというのに、backbone-rails は未だ対応してない(2013/07/02 現在)。 JavaScript…

Ruby で Web ページの本文を抽出する方法

ExtractContent を使えばいい。 Webページの本文抽出 (nakatani @ cybozu labs) ただ、上の記事の ExtractContent は Ruby1.9 以上では動かなかった。正規表現エンジンが変わったからね…。 無ければ自分で修正することを前提に、GitHub で探したら、案の定 1…

麺道はなもこし

久しぶりの食べ歩き。今回は福岡のテレビ番組で麺ランキング1位に紹介された、『麺道はなもこし』に行ってみた。 この店の売りは濃厚鶏白湯のラーメンなんだけど、注文したのは特製鶏中華そば(850円)。テレビで紹介されたのが忘れられなくて。 スープは甘口…