"ios"
Sunday, July 3, 2011
#ios #programming #unit test

[link] Unit Testing in Xcode 4 Quick Start Guide | Ray Wenderlich

Unit Testing in Xcode 4 Quick Start Guide

Xcode4での単体テストチュートリアル。デフォルトのOCUnitではなくGHUnit+OCMockを使用する方法が紹介されている。

Wednesday, June 29, 2011
#ios #programming

[link] Technical Q&A QA1673: Technical Q&A QA1673

How to pause the animation of a layer tree

アニメーションを一時停止する方法

Wednesday, June 8, 2011
#ios #programming

[link] アプリのメモリ使用量をリアルタイムに表示するクラスを公開しました - Over&Out その後

Instrumentsを使うほどではないけどざっくりメモリ使用量を確認したい…ってときに便利かも。

Friday, May 20, 2011
Thursday, May 19, 2011
#ios #programming

下記設定項目のチェックを外す。

1. Xcode > Preferences > General > Enable Live Issues > In Editors, In Issue Navigator

2. File > Project Settings… > Enable live issues in the source editor

Wednesday, May 18, 2011
#ios #programming

NSLogでCGRect型の情報を出力するには、

NSLog(@”%@”,NSStringFromCGRect(frame));

とやるのが楽みたい。

Saturday, May 14, 2011
#ios #programming

NSLog(@”%@”, [dictionaryObj description]);

Thursday, April 28, 2011
#ios #programming

ただし修飾子がretainの場合かつ代入前の値がnil以外の場合に限る。
もう少し正確に言うと、プロパティに対して異なるオブジェクトを代入すると、代入前のオブジェクトに対して1回releaseが行われる。releaseされる理由は、retain指定でpropertyを作成した場合にどういうセッターメソッドが作られるのかをドキュメントで確認すれば分かる。

@property (nonatomic, retain) NSMutableArray *array;


- (void)method {
  // プロパティ経由で代入
  // [array retainCount] = 1(allocの分) + 1(retainの分) = 2
  self.array = [[[NSMutableArray alloc] init] autorelease];
  ...
} // autorelease済みだから、runloop終了で1回releaseされてretainCount = 2 - 1 = 1になる


- (void)dealloc {
  // プロパティ経由でのnil代入により1回releaseされretainCount = 1 - 1 = 0となり
  // arrayオブジェクトは解放される
  self.array = nil;
  [super dealloc];
}

プロパティを経由せず、直接nilを代入してもreleaseされない。
こんなコードをみかけたので、自分も同じ轍を踏まないようメモ。

- (void)dealloc {
  array = nil;  // 直接nil代入しているためreleaseされずretainCount = 1のまま。arrayはゾンビになる。。。
  [super dealloc];
}

releaseなら問題なし。

- (void)dealloc {
  [array release]; // または[self.array release];
  [super dealloc];
}

参照:http://d.hatena.ne.jp/fn7/20100205/1265343972

Wednesday, March 30, 2011
#ios #programming

Xcode 4.0.1をインストールするとgit 1.7.3.4もインストールされるようだ。

Tuesday, March 1, 2011
#ios #programming #reference

[link] UIPasteboard Class Reference

テキストのコピー、ペーストの操作にはUIPasteboardを使う。

Powered by Tumblr. Lightie Futurum designed by Pavia Graphics.