月別アーカイブ: 2011年 2月

iPhoneアプリ開発ではUITableViewを利用する場合が多々あります。そこでちょっと変わったUITableViewの使い方を紹介します。

TableViewを回転させる

標準ではセルが上から下にかけて並んでいますが、TableViewを回転させることで任意の方向にセルを配置することが可能です。

通常のTableView

90度回転させたTableView

90度回転させたものは中に入っているTexLabelも回転させています。Viewを回転させるにはCGAffineTransform構造体を利用します。

1
2
3
4
5
- (void)viewDidLoad {
CGAffineTransform rotate = CGAffineTransformMakeRotation(-90.0f * (M_PI / 180.0f));
[self.view setTransform:rotate];
[super viewDidLoad];
}

CGAffineTransformMakeRotationで回転行列を設定できます。ここでは、90度左に回転させるために−90度を設定しました。CGAffineTransformMakeRotationで指定できる角度はラジアンです。また、その値をUIViewのsetTransformというクラスメソッドに渡すことによって、回転させることが出来ます。また、90度以外にも中途半端に回転させることも可能です。

中途半端に回転させた図

加速度センサとの融合

これだけだとちょっとつまらないので、加速度センサと組み合わせてみました。iPhoneを傾けると、次のページ(セル)に移動するサンプルを作成してみました。

傾きを検知してスライドするサンプル

このプログラムはXcodeのデフォルトのUITableViewControllerのものを利用しております。RootViewController.mの実装は以下のとおりです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
//RootViewController.h
#import
@interface RootViewController : UITableViewController {
NSMutableArray *cellList;
int rotateRad;
int indexRow;
UIAccelerationValue speedX_;
UIAccelerationValue speedY_;
UIAccelerationValue speedZ_;
}
@end

//RootViewController.m
#import "RootViewController.h"

@implementation RootViewController
- (void)viewDidLoad {
cellList = [[NSMutableArray alloc] initWithObjects:
@"P1",
@"P2",
@"P3",
@"P4",
@"P5",
@"P6",
@"P7",
@"P8",
@"P9",
@"P10",
nil];

indexRow = 0;
CGAffineTransform rotate = CGAffineTransformMakeRotation(-90.0f * (M_PI / 180.0f));
[self.view setTransform:rotate];
[self.tableView setScrollEnabled:NO];
[super viewDidLoad];
}

- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
speedX_ = speedY_ = 0.0;
UIAccelerometer *accelemeter = [UIAccelerometer sharedAccelerometer];
accelemeter.updateInterval = 0.5;
accelemeter.delegate = self;
}

- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
UIAccelerometer *accelemeter = [UIAccelerometer sharedAccelerometer];
accelemeter.delegate = nil;
}

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {
speedX_ = acceleration.x;
speedY_ = acceleration.y;
speedZ_ = acceleration.z;
rotateRad = 90+atan2(speedZ_,speedX_)*180/M_PI;

if(rotateRad>30) indexRow++;
else if(rotateRad<-30) indexRow--;
if(indexRow<0)indexRow=0;    if(indexRow>=[cellList count]) indexRow = [cellList count]-1;
NSIndexPath* indexPath = [NSIndexPath indexPathForRow:indexRow inSection:0];
[self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
}

// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations.
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

// Customize the number of sections in the table view.
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}

// Customize the number of rows in the table view.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [cellList count];
}

// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

// Configure the cell.
CGAffineTransform rotate = CGAffineTransformMakeRotation(90.0f * (M_PI / 180.0f));
[cell.textLabel setTransform:rotate];
cell.textLabel.text = [cellList objectAtIndex:indexPath.row];
return cell;
}

- (void)dealloc {
[cellList release];
[super dealloc];
}

@end

ポイントは加速度センサから得られた値をもとに傾きを検出しています。今回はiPhoneを左右に30度傾けた時にセルの移動をするようにしました。また、色んなものと組み合わせれば面白いものができそうですね。

Facebookファンページのお気に入り

CATEGORIES facebookby.a.takeuchi0 Comments2011.02.03

実は12のFacebookでファンページを運営している私たち株式会社キバンインターナショナル

パンダスタジオのファンページに主に力を入れていますが、実験も含め、オーサリングツールのファンページや、会社自体のファンページなどがあります。

複数のファンページを運営している場合は、各ファンページのお気に入りに登録することで、リンクを生成することができます。

やり方は以下です。

1.「自分のファンページのお気に入りに追加」をクリック

▲自分のファンページのお気に入りに追加

▲自分のファンページのお気に入りに追加

2.プルダウンメニューに管理しているファンページが表示されますので、1つ選択してます。

▲自分のファンページのお気に入りに追加

▲自分のファンページのお気に入りに追加

3.他のファンページのお気に入りに追加されました

▲他のファンページのお気に入りに追加されました

▲他のファンページのお気に入りに追加されました

4.「自分のファンページのお気に入りに追加」が消えてしまいますが、リロード、再アクセスすれば復活しますので、複数のファンページのお気に入りにも登録できます。

▲「自分のファンページのお気に入りに追加」の表示が消えてしまいました

▲「自分のファンページのお気に入りに追加」の表示が消えてしまいました

ファンページ同士をつなげることで、自社メディアへの滞在時間が長く効果が見込めるのでお試し下さい。ただし、ジャンルが違う場合にはあまり意味がない場合もあるので、そのあたりはよく考えたほうがいいかもしれません。

きばらじのファンページができました。新しい試みで、FBMLのテンプレートを使用し、様々なことができるようになりましたのでご紹介致します。

1.タブの階層構造化

▲タブの中に複数のタブを作成

▲タブの中に複数のタブを作成

StaticFBMLで作成したオリジナルタブの中に、さらに複数のタブを階層化しています。第2のメニューになるので、使い方によっては、縦長になりがちなオリジナルタブ内もすっきり整理できます。

2.お問い合わせフォーム

▲お問い合わせフォーム

▲お問い合わせフォーム

ファンページかWebサイトへリンクしてお問い合わせを取る、という流れも悪くはありませんが、ファンページにもお問い合わせフォームがあった方がいい!と場合もあるでしょう。きばらじに問い合わせがあればどしどしこちらのフォームからご連絡ください。

3.スライド写真

▲複数の写真を1箇所でスライド表示できるようになりました。

▲複数の写真を1箇所でスライド表示できるようになりました。

オリジナルタブに写真を何枚も貼ると、タブ内が縦長になりがちですが、スライド写真を導入することでスッキリします。キャプション(写真下の簡単な説明文)もつけることができます。

4.シェアボタン

▲シェアボタン

▲シェアボタン

シェアボタンをつけることで、スグにシェアしてもらえる可能性が高まります。ここだ!というポイントに効果的に置きたいですね。

今回は、「スタティックFBML実用サンプル集」というファンページで無料配布されているテンプレートを利用させて頂きました。

最近では、こういう無料配布サイトがではじめましたが、私の見るところ、現状ではこちらが一番充実していて、この他、ファンページでいいね!をクリックしないと見ることができない仕組みや、コメント欄のタグなども公開されているようです。

きばらじのファンページ、どうぞよろしくお願い致します。

SmartBrain 改善予告

CATEGORIES SmartBrain, 北海道ラボby.a.takeuchi0 Comments2011.02.03

学習管理システムSmartBrainには、コース内の進捗が分かるようにグラフが表示されているのですが、次回のアップデート時に、グラフが伸縮するようになります。iPhoneなど、表示領域が限られたモバイル端末が増えています。こういった端末でも快適に利用していただけるように、これからも様々な工夫を取り入れています。

幅が広い場合

幅が広い場合

幅が狭い場合

幅が狭い場合

記事数統計へのリンクを表示

CATEGORIES WordPress, 北海道ラボby.a.takeuchi0 Comments2011.02.03

キバンインターナショナルでは、ブログでの情報発信を推進しています。

情報発信の状況を定量的に把握するための集計ページまで作ったのですが、そのページの表示方法が分からない!との意見を多数いただきましたので、FollowMeタブの↓にリンクを設置致しました。

記事数統計へのリンクを

記事数統計へのリンクを

集計ページのトップに、投稿件数のグラフを表示してほしい。という要望も頂いておりますので、近日中にさらにアップデートいたします。また、Wordpressのプラグインで、画面の端にアイコンを表示する方法についての記事も近日中に公開いたします。

アイコンの提供元 
無料素材倶楽部 > uターン矢印アイコン フリー素材

ビデオ撮影や、ワイヤレス機器が増えてくると、電池を大量に利用します。使い捨てで100円均一の電池ではもったいない。パンダスタジオの中の電池は、すべて、エネループになっているのですが、大量にある電池の充電済み、充電前をきちんと管理するのは、指南の技。箱で仕分けるのは、トラブルのもと。パンダスタジオで利用するワイヤレスマイクなの充電池は、必ず充電器の上で、フル充電のランプがついているものに毎回入れ替えています。

一度にもっとも多く充電できるSANYO 「eneloop」シリーズ ユニバーサル充電器 (単1形~単4形兼用) NC-TGU01を利用していますが、もっとも良く利用する単三電池が8本までしか充電できませんでした。上段は、単一、単二電池の充電スペースで利用できていませんでした。

これまでの充電器は、単2などの利用しない充電スペースが無駄。そこでアダプター。SANYO eneloop 電池スペーサー (単2タイプ2コ入り) NCS-TG2-2BPを購入してきました。

単三電池を、単二電池に変換するアダプター

▲単三電池を、単二電池に変換するアダプター

なんと単純な構造!単三電池を、単二電池のプラスチックの外枠にはめているだけです。

単三電池を単二電池に変換するアダプターは、シンプルな構造で外枠を付けるだけ

▲単三電池を単二電池に変換するアダプターは、シンプルな構造で外枠を付けるだけ

太さは変わっていますが、長さは、全く同じ、もしかして、あれあれ、アダプター不要?

位置さえ合わせれば、単二電池専用の場所で単三電池も充電できる!

▲位置さえ合わせれば、単二電池専用の場所で単三電池も充電できる!

SANYO 「eneloop」シリーズ ユニバーサル充電器 (単1形~単4形兼用) NC-TGU01を利用すれば、単三電池が同時に8本ではなく、12本まで充電できて、とても便利、1.5倍活用出来る方法を発見したというお知らせでした。

株式会社キバンインターナショナル(代表取締役 西村正宏)は、マルチシンガソングライター尾飛良幸氏と共同で、Ustreamなどのネット生中継番組のオープニングやエンディング音楽などを提供するソーシャルメディアパッケージを発売し、2/3(木)18:00より、ソーシャルメディアパッケージを使ったネット生中継番組を放送します。その予告編を公開します。

株式会社キバンインターナショナル(代表取締役 西村正宏)は、マルチシンガソングライター尾飛良幸氏と共同で、Ustreamなどのネット生中継番組のオープニングやエンディング音楽などを提供するソーシャルメディアパッケージを発売し、2/3(木)18:00より、ソーシャルメディアパッケージを使ったネット生中継番組を放送します。

これまでUstreamなどのライブ配信では、CD音源などをそのまま使うことができないなどの著作権上の制約がありました。また、その一方で番組のオープニングをオリジナルで作曲することはなかなか難しいという問題があり、多くの番組が音楽無しで続けられているという状態が続いています。キバンインターナショナルでは、AKB48に楽曲を提供しているマルチシンガソングライター尾飛良幸氏と共同でオリジナル音楽を作ることで、番組内で自由に利用できる音源と、そのための機材を提供します。
このパッケージを提供することで、番組に合わせたオリジナル曲と、配信に必要な機材のセットの提供を通じ、多くの番組サポートを目指しています。

<商品概要>
日本初、ソーシャルメディア専用パッケージ
「ソーシャルメディアパッケージ」
・著作権制限のないオープニング・エンディング・番組中のバックグラウンド
・著作権制限のない効果音
・Roland サンプラー SP-404SX
また、このソーシャルメディアパッケージを使った場合の番組でどんな違いがでるのかを、尾飛様に紹介していただくUstream番組を配信します。

<特別番組>
尾飛良幸の「ソーシャルメディア・パッケージ」ってなんだ?

<日時>
2月3日(木)18時~19時

<URL>
http://kiban.tv/

株式会社キバンインターナショナル(http://kiban.jp
eラーニング専門企業。eラーニングシステム以外に、6種類の教材作成ソフトを発売。2700社にeラーニング関係の製品を提供している。
また、国内初の企業向け課金可能、会員限定可能インターネット生中継「ナマチューケー」サービスを提供している。
2010年2月には、将来有望なベンチャー企業300選”VentureNow300″に選定された。
ソーシャルメディアへの取組も積極的におこない会員限定・課金機能付きのネット生中継サービスを提供するほか、ユーストリーム専用レンタルスタジオ「パンダスタジオ」も運営している。鶴野との共著に『USTREAMで会社をPRする本』(中経出版)がある。

本プレスリリースについて本プレスリリース内容のコピー・転載は自由です。

番組の予告編のムービーもどうぞ。

SP-404SX

2月1日から、ベリタス・アカデミーの東京支社が、株式会社キバンにターナショナルパンダスタジオ内に設置されることになりました。よりよいサービスを生み出すために株式会社キバンにターナショナルでは、IT、ビデオ関連、インターネットプロモーション、eラーニングシステム、コンテンツ開発で全面的にバックアップをして参ります。一緒に机を並べて仕事をすることで、さらにスピーディーに協業ができるのではないかと考えています。

早速、パンダスタジオの黒スタジオで、撮影した動画をアップしましたので、下記に紹介します。
iPadの紹介ビデオを作る際、iPadのアプリの画面を動画で出力することができないことや、実際のiPadの画面を撮影する場合は、iPadの画面に映り込みがでて、中々きれいに撮影することができません。
パンダスタジオでは、iPhoneシュミレータと、クロマキー合成で、iPadの紹介ビデオを撮影することができます。

iPadアプリ「センター第二問満点」の紹介ビデオ予告編

iPadアプリ「センター第二問満点」の紹介ビデオ

Ustreamで番組を始めると、最初は安定的に配信することに精一杯で、なかなか、オープニング、エンディング、効果音などの音に、凝ることができません。

少し慣れてくれば、効果音やオープニングを流したくなるものですが、iTuneなどの音楽再生用のソフトでは、出だしの無音部分があったり、1曲目が終わったら,2曲目に自動的に入ってしまったりと、中々思うようになりません。業務用(プロ)用のポン出しソフトKUEIThttp://soundactive.jp/kueit.html)といったソフトもありますが、まずは、無料のソフトで簡単に始めたいのであれば、「音響がかりさん2http://www.vector.co.jp/soft/winnt/art/se453510.htmlというソフトが便利です。

「音響がかりさん2」のスクリーンショット

▲「音響がかりさん2」のスクリーンショット

音響がかりさん2http://www.vector.co.jp/soft/winnt/art/se453510.htmlの特徴。

USTREAM放送、インターネット放送局、ソーシャルメディア放送局といわれるような通信を利用して番組を配信するときに、絶妙のタイミングで効果音を流すための、いわゆる“ポン出し”を支援するためのソフトウェア。

あらかじめ登録しておいた複数のMP3ファイルを個別または同時に再生することが可能。通常のMP3のプレヤーでは、同時に再生するこtもできないので、大変便利。

それぞれの音声トラックは、再生ボタンやシークバーをもった小型プレイヤーとして画面内に表示され、ドラッグ&ドロップで自由に並べ替えることができます。)

1曲で1プレーヤーになっているので、番組の進行に合わせ、プレヤーを配置しておくと、直感的に操作することができます。

赤枠で囲ったように、複数のトラックを選択した状態で[音源]-[まとめる]メニューをクリックすると、選択中のトラックが線分で結ばれると同時に、対象の全トラックを集中コントロールするためのプレイヤーが現れ、複数のトラックを同時に再生・停止できるようになります。

  1. 複数の音源をまとめて再生したりコントロールするグループ化ができる。
  2. 再生プレイヤーの位置を自由に配置して、番組の進行に合わせた配置ができるため、直感的に利用できる。
  3. トラックごとに、音量や再生位置が変更可能。
  4. トラックごとに再生時の遅延時間が設定可能。
  5. フェードイン・アウトの有無が設定可能。
  6. 操作用のショートカットキーを設定可能。
  7. MP3ファイルに加えてWAVEファイルも再生できるが、(WAVEファイルは音量やフェードイン・アウトなどを指定できないといった制限があります。
  • 製品・サービス
    PC、iPhone対応のeラーニングシステム。20名まで無料でASPサービスを利用できます
    PC、iPhone対応のeラーニング学習管理システム(LMS)【SmartBrain】
    http://smartbrain.info/
    PC、iPhone対応のeラーニングシステム。ユーザ数無制限のASPコースをご用意。


    eラーニングポータルサイト【elearning.co.jp】
    http://elearning.co.jp/
    eラーニング専門企業(株)キバンインターナショナルの製品を紹介しています。


    コンテンツビジネス支援パック
    http://contentsbank.jp/

    Ustream配信、動画コンテンツ制作、セミナーにご利用いただけるレンタルスタジオ
    Ustreamレンタルスタジオ「パンダスタジオ」
    http://pandastudio.tv/

    eラーニング専門企業(株)キバンインターナショナルのスタッフが、eラーニングに関する情報・最新事情をBlogでご紹介。月50本程度の情報発信を行っています。
    ブログ「blog.eラーニング.co.jp」
    http://blog.elearning.co.jp/

  • アーカイブ
  • カテゴリー
  • Amazon
  • タグ