[Airbnb] iOS7での美しい効果をだすための細かな工夫 - ワザノバ | wazanova.jp http://t.co/tcrljLM7Qm
— Jay7 (@__jay7__) 2013年11月14日
この記事の中で紹介されていた BBColorPicker というが面白そうだったので、実際に使ってみました。
ソースに添付されているデモアプリを起動すると、画面右下に「+」ボタンが表示されます。そこから写真を選択することで、写真の色に合わせた色を自動的に解析してくれます。
実装方法
BBColorSamplerManager の
- (void)computePrimaryColorForImage:(UIImage *)image completionBlock:(color_sampler_completion_block_t)completionBlock {
メソッドを使います。第一引数に元となる UIImage を指定することで、画像に適した色が completionBlock の color に返ってきます。
[[BBColorSamplerManager sharedManager] computePrimaryColorForImage:theImage
completionBlock:^(UIColor *color) {
// 適切な色が color 変数で取得できる
}];
また、
- (void)sortColorForImage:(UIImage *)image completionBlock:(color_sampler_sort_completion_block_t)completionBlock;
というメソッドも用意されており、写真に合いそうな色を何色か選んで、サンプル画像を作ってくれます。
[[BBColorSamplerManager sharedManager] sortColorForImage:theImage
completionBlock:^(UIImage *image) {
sampleImage.image = image;
}];
}];
次のスクリーンショット内の下部に表示されている画像がそれに当たります。
というわけで、BBColorPicker についてざっくり書いてみました。
写真を多用するアプリとうまくマッシュアップできたら面白そうですね。私が出しているアプリだと、photosquare *1とうまく組み合わせられないかなー、なんて考えてます。
*1:現在地周辺の写真を集めてスライドショーを作ってくれるアプリです