positionについて調べる

公開日: : 最終更新日:2013/11/12 cocoa

記事内に広告を含む場合があります。記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

Core Reference Libraryでpositionについて調べてみたところ、positionというメソッドを持っているクラスは2つ。

  • CALayer
  • NSPositionalSpecifier

それぞれが持っているpositionについて詳細に調べてみる。

CALayer

@property CGPoint position

NSPositionalSpecifier

  • (NSInsertionPosition)position

  • CALayerのpositionはCGPointを返す
  • NSPositionalSpecifierのpositionはNSInsertionPositionを返す

なるほど。先ほど


[[[menusLayer sublayers]
objectAtIndex:selectedIndex] position]

で出た


MenuView.m:160: warning: multiple methods named '-position' found
NSScriptObjectSpecifiers.h:191: warning: using '-(NSInsertionPosition)position'
CALayer.h:598: warning: also found '-(CGPoint)position'
MenuView.m:160: error: incompatible type for argument 1 of 'setPosition:'

というエラーはこれが原因か?


[[[menusLayer sublayers]
objectAtIndex:selectedIndex] position]

でpositionを呼び出している対象のオブジェクトのクラスを調べる。


NSLog(@"%@", [[menusLayer sublayers] objectAtIndex:selectedIndex]);

2008-04-12 17:16:30.012 CoreAnimationMenu[51596:10b] <CATextLayer: 0x13f2b950>

CATextLayer型か。

  • CALayer
  • CATextLayer
  • NSPositionalSpecifier

の継承チェーンを調べてみる。

  • NSObject -> CALayer
  • NSObject -> CALayer -> CATextLayer
  • NSObject -> NSPositionalSpecifier

うーん、じゃあ何でCATextLayerに対してpositionを呼び出しただけで


MenuView.m:160: warning: multiple methods named '-position' found
NSScriptObjectSpecifiers.h:191: warning: using '-(NSInsertionPosition)position'
CALayer.h:598: warning: also found '-(CGPoint)position'

なんて言われてしまうのだろうか?

関連記事

サンフランシスコのピア39にあるチャウダーズでクラムチャウダーを食す!

lolipop アップルの開発者向けイベント「WWDC2014」

ミスドのカルピスドーナツとカルピスポンデリングを食べてみた!

ミスドで期間限定のカルピスコラボ商品「カルピスドーナツ」と「カルピ

十三カレー計画で牛すじカレーネギのせを食す!(大阪・十三)

「iPhoneアプリ開発キャンプ@大阪」のランチで、十三カレー計画

大阪・難波の加寿屋 法善寺でかすうどんを食す。ランチタイムはおにぎり2個まで無料!

大阪・難波の加寿屋 法善寺 (かすうどん KASUYA)で、かす

ライブドアブログで運営していた「あきお商店」を「卵は世界である」に改名しました

少し前からライブドアブログで「あきお商店」というブログをやって

→もっと見る

PAGE TOP ↑