2010年9月17日金曜日

NSUserDefaults オブジェクト保存 ①文字列、数値

保存方法
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
// BOOL保存
[defaults setBool:YES forKey:@"BOOL"];
// 文字列保存
[defaults setObject:@"TESTSTRING" forKey:@"STRING"];
// 数値保存
[defaults setInteger:20100917 forKey:@"INTEGER"];

読み込み
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
// BOOL読み込み
BOOL bool = [defaults boolForKey:@"BOOL"];
// 文字列読み込み
NSString* string = [defaults stringForKey:@"STRING"];
// 数値の読み込み
int integer = [defaults integerForKey:@"INTEGER"];

2010年9月13日月曜日

デバイスの回転を検知する。

shouldAutorotateToInterfaceOrientation メソッドで YES を返すようにすると回転時に以下のメソッドが実行されます。いずれも UIViewController クラスのメソッドです。

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {    return YES;
}

// 回転後に実行される
-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)FromInterfaceOrientation {
  if(FromInterfaceOrientation == UIInterfaceOrientationPortrait){
       // 横向き
    }
    else {
       // 縦向き
    }
}
 
・UIInterfaceOrientationPortrait
ポートレートモードで、デバイスを垂直に持った時にホームボタンが下部にある状態です。
・UIInterfaceOrientationPortraitUpsideDown
ポートレートモードですが上下逆で、デバイスを垂直に持った時にホームボタンが上部にある状態です。
・UIInterfaceOrientationLandscapeLeft
ランドスケープモードで、デバイスを垂直に持った時にホームボタンが左側にある状態です。
・UIInterfaceOrientationLandscapeRight
ランドスケープモードで、デバイスを垂直に持った時にホームボタンが右側にある状態です。

ビューの自動回転
http://developer.apple.com/jp/iphone/library/featuredarticles/ViewControllerPGforiPhoneOS/AutorotatingViews/chapter_11_section_1.html

2010年9月11日土曜日

iPod Library Access ③Hello Music Player

ここでは、最小限のコードで作成できる音楽プレイヤーの作成方法を記述します。
※開発環境はXcodeです。

①Xcodeで、「Window-based Application」テンプレートから新規プロジェクトを作成します。プロジェクトウインドウで、「Frameworks」グループにMediaPlayerフレームワークを追加します。プロジェクトを保存します。

②Media Playerフレームワーク用のアンブレラヘッダファイルをインポートします。
AppDelegate.hファイルにある既存の#import行の後に、次の行を追加します。

#import <MediaPlayer/MediaPlayer.h>

③ミュージックプレーヤーを作成するコードを追加し、再生するミュージックを割り当てて、再生を開始します。プロジェクトのAppDelegate.m実装ファイルを開きます。applicationDidFinishLaunching:ブロックの終端の前に下記のコードを記載してください。

// ミュージックプレーヤーをインスタンス化する
MPMusicPlayerController *myPlayer =[MPMusicPlayerController applicationMusicPlayer];
// デバイス上のすべてのメディアアイテムを含む再生キューを割り当てる
[myPlayer setQueueWithQuery:[MPMediaQuery songsQuery]];
// キューの先頭から再生を開始する
[myPlayer play];

2010年9月9日木曜日

iPod Library Access ②Music Playerについて

エンドユーザが標準のiPodアプリケーションを使用するのと同様の方法でMusic Playerを使用できます。Music PlayerはMedia Itemの再生に使用するオブジェクトです。再生するMedia Itemのリストである再生キューを持っています。
※Media Itemは、iTunesから同期した際にデバイスに転送されます。また、デバイス上のMedia Item一式をiPod Libraryと呼びます。
Media Playerは現在再生中のItemや再生するよう指定されているItemを知っており、ある時点でのItemのタイムラインの再生ポイントを知っています.

標準のiPod ApplicationでItemを一時停止し、開発したApplicationを起動した場合、Music PlayerはそのItemの再生を同じポイントから続けられます。

Music Playerは再生中のItem,や再生状態、モードを保持しています。Applicationを終了すると再生していたItemは停止します。iPod Music Playerは、標準のiPod Applicationで使用しています。iPodの状態を共有します。Music Playerと違いiPod Music PlayerはAplicationを終了してもItemは終了しません。
※オーディオを再生できるのは一度に1つのMusic Playerのみです。

iPod Library Access ① iPod Library Accessとは


iPod Library Access はiPod LibraryからMediaItemを操作するためのiPhone OSのインターフェイスです。 iPod LibraryからMediaItemを操作する方法は大きく分けて2通りあります。
※下記の図を参照 

左側のMedia Item Pickerは、簡単に使用できるパッケージ済みのView Controllerで、標準のiPodアプリケーションのミュージック選択インターフェイスのように動作します。また、ピッカーで制御できない特別な処理は、図の右下に示すようなMedia Queryインターフェイスを使用します。

次に、図の右側に描かれているAPIが提供するMusic Playerを使用して、取得したMedia Itemを再生します。このインターフェイスを使用するとシステムが自動的にバッファの設定、適切なこーデックを選択して出力デバイスに送信します。

※Media Item:曲、オーディオPodcast、またはオーディオブック。

 










注: iPhone OS 3.0では、iPodライブラリアクセスはオーディオベースのメディアアイテムにのみ適用されます。
iPodライブラリのビデオPodcast、ムービー、またはテレビ番組を再生することはできません。

iPod Library Access プログラミング ガイド
http://developer.apple.com/jp/iphone/library/documentation/iPodLibraryAccess_Guide.pdf

Nike + iPod

「Nike+iPod」についてご説明をしたいと思います。

「Nike+iPod」とは、ワークアウトパートナーだそうです。
ワークアウトの種類(目標設定なし、距離、時間、または消費カロリー)を選択したり、テンションを高める音楽を選択したり、音声および画面によるフィードバックに基づいてワークアウトごとの進行状況を記録したりします。

一番の目玉機能は、世界最大のオンライン・ランニング・コミュニティに参加することで、世界中のランナーと一緒に目標に取り組むことができるというところでしょう。

アプリはiPhone4にデフォルトでインストールされていますが センサーを別で購入する必要があるようです。









Nike+iPod スポーツキット
実売価格 3,400円(税込)
 
 
ユーザーガイド
http://manuals.info.apple.com/ja_JP/nikeipod_users_guide.pdf

2010年9月7日火曜日

スクリーンショット

「ホームボタン」+「スリープボタン」を同時押しすると
スクリーンショットが保存できます。

下記の画像はスクリーンショット機能で撮影したものです。

関数電卓

実は、iPhone デフォルトの電卓アプリは横向きにすると関数電卓になります。

通常の電卓
関数電卓