タグ

ブックマーク / www.toyship.org (9)

  • Objective-CのSingleton、その歴史的経緯など - Toyship.org

    Objective-Cのシングルトンって、昔はcopyWithZoneとかもあって、無駄に面倒だったような記憶があるんだけど、いつの間にか簡単になったんだっけ……?と思ってたので、ちょっと整理してみました。 ARCとGCDが出る前からシングルトンを実装してた人にはちょっと懐かしい話かもしれません。 Singletonとは 改めて説明するまでもないですが、シングルトンとはプロセス内のどこからよんでも同じオブジェクトにアクセスできるようにするデザインパターンです。 どのプログラミング言語においても重要なデザインパターンです。 iOSのシステムフレークワークでもよく使われており、 などはおなじみですよね。 上のメソッドは何回呼んでも同じオブジェクトがかえるようになっているので、いつでも同じオブジェクトに対して処理をすることができます。 自分で実装しなくても、ほとんどの人はシングルトンパターンを使

    Objective-CのSingleton、その歴史的経緯など - Toyship.org
    mollifier
    mollifier 2014/03/23
    singleton, シングルトン, サンプルコード, 重要
  • UIActivityViewControllerを使ったデータ共有 - Toyship.org

    UIActivityViewControllerはiOS6で新しく追加されたクラスです。 Facebook、Twitterなど、システムで用意された複数のアイテムに加え、アプリ独自の機能を追加することができる使い勝手のよい新機能です。 iOS6でしか使えないのが難点ですが、是非使いこなしていきたいですね。 UIActivityViewControllerとは UIActivityViewControllerは、指定したオブジェクトに応じて、ファイル共有やメール添付などの機能を自動的に表示してくれるViewControllerです。 UIDocumentInteractionControllerと違い、特定のファイルを指定するのではなく、複数のオブジェクトを指定します。 さらにアプリ独自の機能を追加することもできる、なかなか応用範囲の広いViewControllerです。 システムActiv

    UIActivityViewControllerを使ったデータ共有 - Toyship.org
  • UIDocumentInteractionControllerを使ったデータ共有 - Toyship.org

    iOSアプリでUIDocumentInteractionControllerを使うと、他のアプリに画像ファイルやpdfファイルなどを送信することができます。 かなり古く(iOS3.2)から使える便利な機能なんですが、なぜかそれほど一般的ではないんですよね。 iOS5までとiOS6以降でだいぶ見た目がかわったので、まとめてみました。 iOS6でのUIDocumentInteractionController 実装方法はiOS6でもiOS5以前でも変わらないんですが、見た目はiOS6でがらっと変わりました。 iOS5までの見た目はこちら。 不透明なボードの上にシンプルなボタンが並びます。実直なUIですね。 iOS6での見た目はこちらです。 iOS6ではアイコンベースとなり、UIActivityViewControllerと同様の見た目になりました。 以前と比較すると、ベースのシートが半透明とな

    UIDocumentInteractionControllerを使ったデータ共有 - Toyship.org
  • OpenURLを使ったデータ共有 - Toyship.org

    OpenURLを使った共有はiOSアプリ間の情報共有で一番基的です。 一番最初からあるファイル共有機能として、いろいろなアプリで広く使われています。 OpenURLで他のアプリを起動する OpenURLでは、それぞれのアプリに指定されている「URLSchema」という文字列を使って他のアプリを起動します。 例えば、「myreceivedatademo://」という「URLSchema」を持つアプリに「testinformation」という文字を送りたい場合には、このように記述します。 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"myreceivedatademo://testinformation"]]; また、この仕組みはアプリ間だけでなくSafariやMailなどからでも使えるので、htmlにこち

    OpenURLを使ったデータ共有 - Toyship.org
  • 新審査基準、PIE Binary とは - Toyship.org

    どうやら、この2、3ヶ月の間に、Appleの審査基準にまた新しい項目が追加されたようです。 古いアプリを修正してリリースする方は注意してくださいね。 (最近新規プロジェクトを作成してビルドをした方はたぶん大丈夫だと思います。デフォルトの設定ではPIE Binaryになっているはずです。) 2013/9/11追記:今日発表になったiPhone 5sのA7チップは、いままでのiPhoneで採用されていた32bitではなく64bitです。64bitのiOSでは、non PIE binaryはサポートされないという情報がAppleからでているので、iPhone 5sで動作させたい場合にはPIE Binary対応が必要です。 Reject with Non-PIE Binary 今年の5月頃からApp Storeで下記のような理由でRejectされるアプリが出てきました。 *1 *2 Non-PIE

    新審査基準、PIE Binary とは - Toyship.org
    mollifier
    mollifier 2013/09/14
  • iOS6でマップアプリを起動する - Toyship.org

    昨日「iOS6の3D Mapで観光地めぐり」の記事を書いていて気がついたんですが、マップアプリがGoogle製からApple製になったので、Mapの起動方法が変わっています。 今までのソースコードのままだとちょっと動作が違ってくるので注意が必要です。 Safariから起動する場合 まず、Safariから起動する場合。 iOS5までは、htmlファイルからこちらのリンクをよべば、iPhone体のMapアプリが起動していました。 <a href="http://maps.google.com/maps?q=cupertino">Cupertino</a> iOS6では、上のリンクは「Safariでhttp://maps.google.com/を開く」動作になってしまいます。 iPhoneMapアプリを開きたい場合にはこのリンクをつかってください。 <a href="http://maps.

    iOS6でマップアプリを起動する - Toyship.org
    mollifier
    mollifier 2012/09/24
    map, 地図, 起動, maps.google.com, maps.apple.com
  • アプリのiPhone5対応 - Toyship.org

    今までのアプリをiPhone5の640x1136の縦長画面に対応させるために私がやったことのメモです。 (たぶんこれで大丈夫だと思うんですけど、何か問題があったら追記します。) iPhone5画面サイズ対応 まず、アプリをiPhone5の640x1136サイズで起動するには、プロジェクトにこの画像ファイルを追加すること。(もちろん画像サイズは640x1136) Default-568h@2x.png 公式書類に一応書いてあるんですが、ちょっと記述がわかりづらいですね。(もうちょっとわかりやすくかいてくれてもいいと思うんですけど。) iOS App Programming Guide(App-Related Resources) 各画面のサイズ変更対応 次に、起動画面以外の各画面をiPhone5/iPhone4の両対応にするための変更です。 まずは、それぞれのxibファイルを開いて、ベースと

    アプリのiPhone5対応 - Toyship.org
  • UITextField/UITextViewの文字入力で覚えておくと便利なこと - Toyship.org

    iPhoneで文字を入力してもらうときにはUITextFieldかUITextViewを使います。 UITextFieldとUITextViewはUITextInputTraitsプロトコルを継承していて、プロパティをちょっと変えるだけでいろいろと細かい設定ができます。 iPhoneの画面は狭いので、文字入力をするときにこのあたりのことを注意するようにすると、ユーザーの使い勝手がちょっとよくなりますよ。 (2012/03/31 iOS 5.0で追加されたUIKeyboardTypeTwitterを追記しました。) まずはUITextFieldを作ってみる まずはテキストフィールドの作成。 普通につくると、こんな感じのキーボードが表示されて文字が入力できます。 (図はクリックすると拡大します。) UITextField* inputText = [[[UITextField alloc] i

    UITextField/UITextViewの文字入力で覚えておくと便利なこと - Toyship.org
    mollifier
    mollifier 2012/02/03
    iPhone, キーボード, リスト, list, 一覧, UITextField
  • UITextField/UITextViewの文字入力で覚えておくと便利なこと | Toyship.org

    iPhoneで文字を入力してもらうときにはUITextFieldかUITextViewを使います。 UITextFieldとUITextViewはUITextInputTraitsプロトコルを継承していて、プロパティをちょっと変えるだけでいろいろと細かい設定ができます。 iPhoneの画面は狭いので、文字入力をするときにこのあたりのことを注意するようにすると、ユーザーの使い勝手がちょっとよくなりますよ。 まずはUITextFieldを作ってみる まずはテキストフィールドの作成。 普通につくると、こんな感じのキーボードが表示されて文字が入力できます。 UITextField* inputText = [[[UITextField alloc] initWithFrame:CGRectMake(10,10,190,30)] autorelease]; inputText.borderS

    mollifier
    mollifier 2011/03/16
    キーボード, keyboard, 一覧, list, リスト
  • 1