CGPointもカテゴリで配列へ
頭と尻尾はくれてやる! 構造体の定義部分にカテゴリで拡張しておく
↑まあこの続きと言えば続きかな。カテゴリx構造体のネタだよ。
CGPointって構造体があって座標を入れておくのによく使うんだけど、これも配列によく出し入れするのでカテゴリを追加したんだ。
実装部分はこんな感じにしてみた。
ホントは追加時のメソッド名をaddCGPoint:としたかったんだけど、これに合わせると取り出す時のメソッド名が
cGPointAtIndex:
になってしまう。これはメソッド名は小文字で始めるってマイルールがあるからなんだけど、、、これはしっくりこない。
CGPointAtIndex:
cgPointAtIndex:
cgpointAtIndex:
とかいろいろ考えたんだけど、今のところ座標を示す点を持つ構造体はCGPointしか使わないから
addPoint:
pointAtIndex:
という組み合わせにすることにしたよ。
クラス名、メソッド名や変数名ってホント悩むよね。
↑まあこの続きと言えば続きかな。カテゴリx構造体のネタだよ。
CGPointって構造体があって座標を入れておくのによく使うんだけど、これも配列によく出し入れするのでカテゴリを追加したんだ。
実装部分はこんな感じにしてみた。
@implementation NSMutableArray (AddCGPointToArray) -(void)addPoint:(CGPoint)point { NSValue *value = [NSValue value:&point withObjCType:@encode(CGPoint)]; [self addObject:value]; } @end @implementation NSArray (GetCGPointFromArray) -(CGPoint)pointAtIndex:(int)index { NSValue *value = [self objectAtIndex:index]; CGPoint point; [value getValue:&point]; return point; } @end迷ったのはメソッド名。
ホントは追加時のメソッド名をaddCGPoint:としたかったんだけど、これに合わせると取り出す時のメソッド名が
cGPointAtIndex:
になってしまう。これはメソッド名は小文字で始めるってマイルールがあるからなんだけど、、、これはしっくりこない。
CGPointAtIndex:
cgPointAtIndex:
cgpointAtIndex:
とかいろいろ考えたんだけど、今のところ座標を示す点を持つ構造体はCGPointしか使わないから
addPoint:
pointAtIndex:
という組み合わせにすることにしたよ。
クラス名、メソッド名や変数名ってホント悩むよね。
<< サブビューを全部消すカテゴリ TopPage ステータスバーの上層にビューを表示させたい >>
トラックバック
トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/766-3ab36191
http://ringsbell.blog117.fc2.com/tb.php/766-3ab36191