タグ

iOSに関するgotinのブックマーク (8)

  • Objective-C における @property と @synthesize の簡単な説明 · GitHub

    Clone via HTTPS Clone with Git or checkout with SVN using the repository’s web address.

    Objective-C における @property と @synthesize の簡単な説明 · GitHub
    gotin
    gotin 2012/04/29
  • ダイナミックObjective-C(108) Fast Enumeration (4) - Fast Enumerationに対応するクラスの実装

    前回から少し時間が空いてしまったが、Fast Enumerationの話を続けよう。今回は、自分で作ったクラスをFast Enumerationに対応させるためのコードの書き方だ。NSFastEnumerationで定義されているメソッドを実装することになる。 NSFastEnumerationに準拠するクラス まず、今回の説明のために一つ新しいクラスを作る。列挙可能な配列のクラスということで、EnumeratableArrayという名前にしよう。このクラスを、NSFastEnumerationプロトコルに準拠させる。 インスタンス変数として、オブジェクトの配列を持たせることにする。これは、単なるC言語の配列にしておく。これを、Fast Enumerationの文法を使ってアクセス出来るようにするのが、このクラスの目的だ。 クラスの宣言は、次のようにした。 List 1. #define

    ダイナミックObjective-C(108) Fast Enumeration (4) - Fast Enumerationに対応するクラスの実装
    gotin
    gotin 2012/04/29
  • [iOS5] ARC : Autorelease, キャスト, 環境設定 | Natsu note

    これまでの記事はこちら: [iOS5] ARC (Automatic Reference Counting) : Overview [iOS5] ARC : プロパティ属性と使い方 [iOS5] ARC : Outletにはweakプロパティを使おう [iOS5] ARC : 循環参照 ARCまとめの最終回はAutoreleaseとキャストについてです。また、最後で簡単にですが、Xcodeの環境設定についても触れます。 Autorelease ARC環境下では、これまでのNSAutoreleasePoolは使えません。そうは言っても、別にAutorelease環境がなくなってしまったわけではなく、作法が少し変わったのですね。 まずは、参考までにmain.mを見てみましょう。 非ARC(マニュアルメモリ管理) int main(int argc, char *argv[]) { NSAuto

    gotin
    gotin 2012/04/29
  • Objective-Cのクラス定義を理解しよう

    Objective-Cのクラス定義を理解しよう:Cocoaの素、Objective-Cを知ろう(3)(1/3 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基を理解しよう(編集部) 前回の「一番初めのObjective-Cプログラム」では、シンプルなサンプルプログラムに沿って、クラス定義の最低限のルールを解説しました。 今回からは、プログラムの構成要素の1つ1つをより深く掘り下げていきたいと思います。その手始めとして、まずはオブジェクト指向の中核であるクラスの定義方法について解説します。前回までの解説と多少重複する部分もありますが、クラスに含まれる構成要素について、より詳しく見ていくことにしましょう。 なお、今回のサンプルは、説明やファイル作成を簡単にするために、クラスの宣言、クラスの実装、および

    Objective-Cのクラス定義を理解しよう
    gotin
    gotin 2012/04/29
  • アプリのiOS5のアップデート対応 - 西海岸より

    iOS5が公開され、既存アプリのiOS5対応が必要だった項目のまとめ(全部ではないけど)。印象として、追加された機能以上に既存ライブラリの仕様がそこそこ変わっていて、テストして発見の繰り返しだった。 以下トピック別対応の一覧。 removeFromSuperlayerの付近で落ちる removeFromSuperlayerによりlayerのretainCountが減少するタイミングが変わった模様で、 それまではautorelease?だったっぽいが、即座にreleaseされてしまっているようだった。 以下のようにもともとのコードが悪かったので、removeFromSuperlayerを最後にするように修正。 修正前のダメなコード (removeFromSuperlayerを最後にすればよい) [aLayer removeFromSuperlayer]; [mutableArray addO

    アプリのiOS5のアップデート対応 - 西海岸より
    gotin
    gotin 2012/04/29
  • iPhoneアプリケーション開発: getterおよびsetterと@synthesizeの関係

    getterとsetterとは まずは簡単な例として@propertyで外部から読み書きともにアクセス可能な変数について考えてみます。 外部からオブジェクト内の変数などへアクセスする場合、たとえばオブジェクト外部においてmyObjectという名前で宣言したオブジェクトにある、 myValueという名前の変数なら、 myObject.myValueと書いたものを式の右辺におけば現在の値を取り出せます。逆に左辺におけば外部から値を変更することが出来ます。 このときオブジェクトの内部ではゲッターやセッターと呼ばれるものが働いています。例えば先ほどのmyValueがNSInteger型の変数だとすると、 値を入手する場合には

    gotin
    gotin 2012/04/29
  • GTM HTTP Fetcherを利用した通信方法まとめ - プログラミングノート

    ASIHTTPRequestが開発終了ということで、最近はGoogleが開発しているGTMHTTPFetcherを利用しています。 Best Album、FlickPicsともに利用していますが、シンプルなNSURLConnectionのラッパーなのでとても扱いやすく、ソースもそこまで大きくないので必要に応じて自分で改良することも難しくありません。 Introductionにある程度まとまっているのですが、画像アップロードを開発する際、multipartリクエスト周りでハマったので、これだけ知ってれば十分使えるでしょうというところと合わせてまとめてみました。 特徴 Simple to build; only one source/header file pair is required Simple to use: takes just two lines of code to fetch

    GTM HTTP Fetcherを利用した通信方法まとめ - プログラミングノート
    gotin
    gotin 2012/01/15
  • Downloads (2010-2011 Fall) | CS 193P iPhone Application Development

    Title: Lecture 6: Application & View Controller Lifecycle, Navigation Controller

  • 1