タグ

ブックマーク / blog.syuhari.jp (12)

  • [iPhone] plist から情報を取得する | Sun Limited Mt.

    plist とはプロパティリストのことで、アップル特有のデータフォーマットで中身は XML です。アプリの情報で info.plist とか使うので、iPhone アプリ開発時には一度は使ったことがあると思います。 今回はアプリに渡す固定値を plist で渡すことをやりました。 plist の書き方 Xcode なら plist 用のエディタがあるので、それを使うのが最も簡単です。ただ、件数が多いデータを作成する場合手作業では面倒なので、簡単なスクリプトを組んで生成したいところです。今回、私は PHP で2000件ほどのデータを plist に書き出しました。 plist の書き方ですが以下のようになります。 NSString <string> String Data</string;&gt NSNumber <integer>123456</integer> <real>3.14159

    tototti
    tototti 2012/02/09
    独自にplistを作成して、iOSSDKで使う方法。
  • [iPhone/iPad] UIGestureRecognizer でジェスチャーを識別する | Sun Limited Mt.

    iOS3.2 で追加された UIGestureRecognizer を使うと様々なジェスチャーを簡単に識別することができます。ただし、iOS3.2 以降で利用可能なので使用する際には注意が必要です。iPad アプリなら問題ないです。識別できるジェスチャーは以下のとおりです。 タップ ピンチ パン(ドラッグ) スワイプ ローテイト ロングプレス ローテイトは2指でタッチして回転させることです。1指でタッチして回転させてもパン(ドラッグ)としてしか認識されません。 使い方はそれぞれのインスタンスを作成して、ジェスチャーを認識したときに呼ぶアクションを指定して、そのアクションでジェスチャー認識時の処理を行います。 タップ numberOfTapsRequired に認識するタップ数を指定します。デフォルトは1です。 // シングルタップ UITapGestureRecognizer* tap

    tototti
    tototti 2010/09/13
    ダブルタップ、スワイプなどを検出。3.2以降で使用可能。
  • [iPhone] UIWebView の表示内容をキャプチャして UIImage を生成する | Sun Limited Mt.

    UIWebView の表示内容を UIImage にして、表示する方法です。UIWebView を表示させずに、指定した URL のページ内容をレンダリングして UIImage を生成して、UIImageViw に表示します。スクリーンショットだけを取りたいときに使えます。 UIWebView はインスタンスを生成しただけでは、URL をロードしてもレンダリングされません。レンダリングするには UIWindow 内になければダメです。そのために実際には表示しない UIWindow を作成して、その中に addSubview します。 UIWebView のデリゲートメソッド webViewDidFinishLoad: でロード終了の通知を受けてから、UIWebView のレイヤーの内容を UIImage に書きだします。 - (void)viewDidLoad { [super viewD

    tototti
    tototti 2010/05/21
    応用が効きそうお。
  • [iPhone 開発メモ] アイコンの透明感を付けない方法 | Sun Limited Mt.

    iPhone アプリのアイコンは iPhone が勝手に角丸で透明感 (glossy) のあるアイコンにエフェクトをかけて表示してくれます。 参考:[iPhone 開発メモ] アプリ起動時のスプラッシュ画像とアイコンを設定する方法 どうしても自分でアイコンのエフェクトを決めたい場合は info.plist で UIPrerenderedIcon に <true/> を設定すれば透明感 (glossy) がなくなります。 設定方法は info.plist に UIPrerenderedIcon という Key を追加して Value のところで右クリックして [Value Type] > [Boolean] を選択するとチェックボックスに変わるので、そのチェックボックスにチェックを入れます。

    tototti
    tototti 2010/05/20
    info.plistに設定があるのですね。てっきり元のアイコン画像を加工するのかと思っていた。。。
  • [iPhone] 地図にピンが落ちてくるアニメーション | Sun Limited Mt.

    Map.app のようにピンが上から落ちてくるアニメーションを MapKit で実装する方法です。 ピンのアノテーション MKPinAnnotationView の場合は簡単です。animatesDrop = YES を指定するだけです。 -(MKAnnotationView*)mapView:(MKMapView*)_mapView viewForAnnotation:(id )annotation { if (annotation == mapView.userLocation) { return nil; } MKPinAnnotationView *annotationView; NSString* identifier = @"Pin"; annotationView = (MKPinAnnotationView*)[mapView dequeueReusableAnnotati

    tototti
    tototti 2010/04/02
    独自アイコンを使った場合、アニメーションがつかないので、その対策
  • [iPhone 開発メモ] UIPickerView の使用方法 | Sun Limited Mt.

    UIPickerView の使用方法のメモです。UITableView に使い方は似ています。 numberOfComponentsInPickerView で何列にするか指定 pickerView: numberOfRowsInComponent で列のセル数を指定 pickerView: titleForRow: forComponent でそれぞれの列、セルのラベルを指定 pickerView: didSelectRow: inComponent で Picker を動かした後の処理をする という流れです。 IB で View に UIPickerView を配置する。 PickerViewController.h #import <UIKit/UIKit.h> @interface PickerViewController : UIViewController <UIPickerV

  • [iPhone] XML を NSXMLParser を使用して解析する | Sun Limited Mt.

    iPhone では NSXMLDocument がシュミレータでは動作するが実機では動作しないそうなので、NSXMLParser を使用して解析してみました。 解析したのは下記のような XML です。 <?xml version="1.0" encoding="UTF-8"?> <users> <user name="hoge" age="20" /> <user name="fuga" age="30" /> </users> 実際に解析するコード static NSString *feedURLString = @"http://www.syuhari.jp/test/test.xml"; - (void)parserDidStartDocument:(NSXMLParser *)parser { // 解析開始時に実行する処理 } - (void)parseXMLFileAtURL:

  • [iPhone] cocos2d 入門1 – テンプレートを設定 | Sun Limited Mt.

    先日開催された CEDEC には行けなかったのですが、聞きたかったゼペットの宮川さんの講演がアップされていたので、早速見ました。 CEDEC 2009講演動画 この講演で iNinja や iYamata が cocos2d を使用して作られていることを知りました。cocos2d に関してはどんなものかはだいたい知っていたのですが、使ったことはありませんでした。そこで早速使ってみることにしました。 取りあえずすぐに使えるように Xcode のテンプレートを作成しました。 cocos2d をダウンロード Download ? cocos2d for iPhone 上記より最新の cocos2d をダウンロードします。 テンプレートの作成 ターミナルを開き、ダウンロードして出来たフォルダに cd します。 そして以下のコマンドを実行します。 ./install_template.sh このコマ

    tototti
    tototti 2009/09/07
    とても興味深い入門。cocos2d気になっていたけど、いまいち取っ付きにくい感じだったので。
  • Google Developer Day 2009 に行ってきた | Sun Limited Mt.

    昨日は WWDC の Keynote を見てから、パシフィコ横浜で開催される Google Developer Day 2009 に行ってきました。 10時からの基調講演を聞くために 9:40 位に会場に到着しましたが、既に会場へは長者の列!最後尾に並ぶとその後もどんどんと列は長くなって行く。10時過ぎに会場に入ると真ん中よりやや後ろくらいでした。 内容は ・Google ChromeHTML 5 ・Android ・Open Social ・Google Wave など。 基調講演の詳細などは下記サイトが詳しいです。 Google Japan Blog: Google Developer Day 2009 Japanが、パシフィコ横浜でいよいよスタート! 事前登録者には数週間以内に Google Wave のアカウントも発行されるそうです。これも楽しみ。 Android の所では、事

    tototti
    tototti 2009/06/10
  • [iPhone] アプリ名をローカライズする方法 | Sun Limited Mt.

    iPhone のホーム画面に表示されるアプリ名をローカライズする方法です。 InfoPlist.strings 新規ファイルを作成で InfoPlist.strings という名称のファイルを作成します。作成するのは Resources グループの中などでよいでしょう。Ctrl+N などで新規ファイル作成画面を開き、テンプレートは Mac OS X の「その他」にある「空のファイル」を選択します。 アプリ名の登録 info.plist の Bundle display name に指定した名前が通常は表示されますが、アプリ名をローカライズする場合は InfoPlist.strings に CFBundleDisplayName として登録します。 CFBundleDisplayName = "App Name"; InfoPlist.strings をローカライズ InfoPlist.st

  • [iPhone] アプリのローカライズ(国際化対応)方法 | Sun Limited Mt.

    iPhone アプリのローカライズ方法です。 下記サイトが大変詳しく参考になりました。 A-Liaison BLOG: iPhoneアプリをローカライズ(国際化対応)してみた 文字列出力部分にNSLocalizedString() を利用する NSString* string = @"hoge"; としている部分を NSString* string = NSLocalizedString(@"hoge", @"comment"); のようにする。 @”hoge” の部分は出力したい文字列で、@”comment” の部分は後で使うローカライズするファイルにコメントとして入ります。nil でもいいのですが、コメントを入れておいた方が後で翻訳する時に便利です。 Localizable.string ファイルを生成する 翻訳ファイル(Localizable.string) を作るのは手動でも出来ま

  • [iPhone 開発メモ] 短い音を再生する方法 | Sun Limited Mt.

    iPhone アプリで効果音のような短い音を鳴らす方法です。 再生できる音は 30 秒以下の AIFF, CAF, WAV ファイルです。シュミレータでは MP3 も鳴らせましたが実機では鳴らないようです。同時に複数鳴らすことも可能です。その場合は音声ファイル毎に SystemSoundID が必要です。シュミレータで3音同時再生までは試しました。 ※5 秒以上のファイルは Audio Queue Services を使う必要があります。 基は以下の通り。 AudioServicesCreateSystemSoundID で音声ファイルを登録して、SystemSoundID を取得 取得した SystemSoundID を使用して AudioServicesPlaySystemSound で再生する 使用が終わった SystemSoundID は AudioServicesDispose

  • 1