iPhoneアプリ開発者なら一度はCoverflowを実装してみたいと思うはず。
coverflowの実現方法は、以前からエリカ様の書籍にて公開されていましたが、undocumentedなAPIを使っているため、おそらくあの方法では申請したところでAppleに蹴られて終わりでしょう。最近はundocumented API検出ツールのようなものをAppleが使って審査してるという話もあるので、審査の目は前よりも厳しくなってる気がします。
となると、自力で実装していくしかないのですが、ちょうどよいライブラリがあったので、早速試してみる。
thefaj’s OpenFlow at master – GitHub
使い方はREADMEにも書いてあるとおり、
- OpenFlowのソースをプロジェクトへコピー
- CoreGraphics.frameworkとQuartzCore.frameworkをプロジェクトへ追加
- AFOpenFlowView.hをインポート
- AFOpenFlowViewDelegate と AFOpenFlowViewDataSourceのプロトコルを実装する
Delegateの方のプロトコルはoptionalなのでひとまずDataSourceの方だけでみると
- – (void)openFlowView:(AFOpenFlowView *)openFlowView requestImageForIndex:(int)index
- – (UIImage *)defaultImage
の2つ。
サンプルはこんな感じです。
#import "RootViewController.h"
#import "AFOpenFlowView.h"
@implementation RootViewController
@synthesize flowView;
- (void)viewDidLoad {
[super viewDidLoad];
CGRect frame = [UIScreen mainScreen].applicationFrame;
flowView = [[AFOpenFlowView alloc] initWithFrame:frame];
flowView.dataSource = self;
flowView.viewDelegate = self;
flowView.backgroundColor = [UIColor blackColor];
[flowView setNumberOfImages:10];
[self.view addSubview:flowView];
}
- (void)openFlowView:(AFOpenFlowView *)openFlowView requestImageForIndex:(int)index {
[flowView setImage:[UIImage imageNamed:@"camera.png"] forIndex:index];
}
- (UIImage *)defaultImage {
return [UIImage imageNamed:@"camera.png"];
}
- (void)dealloc {
[flowView release];
[super dealloc];
}
@end |
viewDidLoadあたりでAFOpenFlowViewを初期化。
dataSourceとdelegate(propertyはviewDelegate)にcontrollerをセット。
coverflowで表示したい画像数をセット。
あとはrequestImageForIndexでindex番目の画像をAFOpenFlowViewにセット。
デフォルトの画像はdefaultImageで設定できる。
完成はこんな感じ。



5月 14th, 2010 at 4:18 PM
このサンプルではエラーになるのでは?
6月 28th, 2010 at 9:27 AM
情報ありがとうございます。ちなみに、動きますよ>匿名さん
7月 20th, 2010 at 10:40 PM
良い情報ありがとうございます。
一つ質問があります。
OpenFlowを使ってアプリを開発して見ようと思っていますが、
ただOpenFlow公開サンプルを使ってアプリを肺初すれば良いのでしょうか。。
私が気になっているのは。。著作権問題です。
例えば、このライブラリを使う時にはOpenFlow開発者にメールを送って許可を
得た上で使うこととか。。アプリ内に著作権情報を含むこととか。。
確認結果、OpenFlowは、「MIT open source license」となっていましたが、MITライセンスって実際にどうやって使えば良いのか。。が知りたいです。
どうかご教授お願いします。
12月 27th, 2010 at 4:18 AM
[...] thefaj/OpenFlow – GitHub 【iPhone】coverflowを簡単に実装できるライブラリ | iPhoneアプリで稼げるのか [...]