transform中の座標取得
2015/01/18
CGAffineTransformを使用して画像を変化させている最中の座標取得方法は下記の通りです。
UIImageView *hoge;
CALayer *layer = hoge.layer.presentationLayer;
float hogeY = [[layer valueForKeyPath:@”transform.translation.y”]floatValue];
これで移動中のy座標を取得できます。
また、変化中の画像の大きさ(width)の値を知りたい場合は
CALayer *layer = hoge.layer.presentationLayer;
float hogeW = [[layer valueForKeyPath:@”transform.scale.x”]floatValue];
となります。
画像の大きさなので「width」だから「transform.scale.w」と思いがちですが、
「transform.scale.x」となるので注意が必要です。
float hogeX = [[layer valueForKeyPath:@”transform.translation.x”]floatValue];
float hogeY = [[layer valueForKeyPath:@”transform.translation.y”]floatValue];
float hogeW = [[layer valueForKeyPath:@”transform.scale.x“]floatValue];
float hogeH = [[layer valueForKeyPath:@”transform.scale.y“]floatValue];
関連記事
-
-
よく使うショートカット
Ctrl+6 : 表示中のクラスのメソッド一覧 さらにテキスト入力してインクリメ …
-
-
UILabelをコードで生成(Tips付)
Main Storyboard (IB)に用意されている Label を使わずに …
-
-
for文の便利な使い方
for文を使って繰り返し実行させる場合、基本的には数値を使ってループさせます。 …
-
-
負の数を絶対数へ変換 abs
負の数を自然数(マイナスを含まない数字)にしたくて、「Xcode 自然数 変換」 …
-
-
NSArray valueForkeypath関数
NSArrayやNSDictionaryを多用する人にお勧めですCoreData …
-
-
ボタンに画像(背景)を指定する
// ボタンのサイズを指定する UIButton *startBtn = [[U …
-
-
UIImageViewにボタンを貼りたい場合
タイトル画面などを作りたい場合、UIImageViewを使用して背景などを作るこ …
-
-
経過時間を算出する
まず比較する為の時刻を予めローカルに保存するために NSUserDefaults …
-
-
UIViewを透明にする
// opaque属性にNOを設定する事で、背景透過を許可する。 UIView …
-
-
タッチイベント:有効・無効
// タッチイベントを有効にしたい場合の処理 [[UIApplication s …
- PREV
- SpriteKitでボタンを実装
- NEXT
- SNS連携
