Tabs

iPhone&Androidのアプリ制作・デザイン

*

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];


 - Begin

  関連記事

eyechatch_xcode_tips-300x300
経過時間を算出する

まず比較する為の時刻を予めローカルに保存するために NSUserDefaults …

no image
for文の便利な使い方

for文を使って繰り返し実行させる場合、基本的には数値を使ってループさせます。 …

eyechatch_xcode_tips-300x300
UIViewの背景画像をフィットさせたい

UIViewは(UIImageViewとは違い)背景画像のサイズをフィットする機 …

no image
UILabelをコードで生成(Tips付)

Main Storyboard (IB)に用意されている Label を使わずに …

no image
アプリの名前をつける

iPhoneのホーム画面に表示される「アプリ名」の付け方 アプリ名の変更には上 …

no image
NSArray valueForkeypath関数

NSArrayやNSDictionaryを多用する人にお勧めですCoreData …

eyechatch_xcode_tips-300x300
Xcode6 GameCenter 実装

Xcode6(iOS7以上)でのGameCenter実装 検索であまり見つからな …

no image
SubViewの重ね順を変更する

SubViewの重ね順を最前面に移動する場合 bringSubviewToFro …

no image
CGAffineTransformIdentity

アフィン変換がされたビューを,初期状態(アフィン変換がされていない状態)に戻す …

eyechatch_xcode_tips-300x300
配列にNSNumberをぶちこむ

配列から数値を直に取り出したい場合はどうするのかと調べてみたのでメモ。 NSNu …