はてなブックマークに追加

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
はてなブックマークに追加

UIImageViewを動かす

imageViewで表示した画像を、
指の動きにあわせて動かす方法を紹介します。

まずは動かすための画像をIBで設定します。

moveImageVIew1.jpg

IBのViewウインドウにライブラリからUIImageViewを
ドラック&ドロップします。

moveimageview1_5.jpg

次にAttributesウインドウでファイルを指定し、
画像を読み込みます。

ここまでできたら、Xcodeに戻りプログラムを作成します。
まずは、ヘッダファイルから見ていきましょう。

sampleViewController.h
@interface sampleViewController : UIViewController {
IBOutlet UIImageView *panda;
}

ヘッダファイルでは、先程IB側で設定したUIImageViewのアウトレットを
宣言しているだけです。

mファイルではUIImageViewの中心座標が
指を置いた座標になるようにタッチイベントのコールバック関数を設定します。

コールバック関数とはなんぞや?というかたはこちら
Objective-Cのコールバック

デフォルトで生成されたファイルに次の関数を追加してください。

sampleViewController.m
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
CGPoint touchPos = [touch locationInView:self.view];
panda.center = touchPos;
}

この関数では、1行目で指座標の配列touchesから、
どれか一つの座標をとり出しています。
次に、2行目では、指の座標を指定したView(今回はオリジナルview)
における座標系に変換します。
最後の3行目で、変換後の座標を画像の中心座標に設定しています。


あとはIB側でpandaアウトレットとUIImageVIewを接続したら
コンパイル&実行してみてください。

画面上で指を動かすと、画像も追従して動けば成功です。

moveimageview2.jpg

スポンサーサイト

コメントの投稿

非公開コメント

開発アプリ

iDOF 色影 ラテアート ぱすてる

プロフィール

hokuson

Author:hokuson
京都在住。iPhoneアプリ「色影」や「iDOF」の開発者。アプリのレビューとかもしてみる。博士後期課程@R大学。ついに就職活動なるものをしなければいけないらしい。誰か雇ってください。笑。

カレンダー
08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
カテゴリ
最新コメント
RSSリンクの表示
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。