iPhoneアプリ開発 -UIScrollViewで画像を拡大・縮小-

公開日: : iPhone, IT, Mac


 やりたいこと

UIScrollViewでピンチアウト・インして上に乗っている画像を拡大・縮小したい。

 やったこと

 前提

前提として以下とします。

  • ベースとなるUIScrollView

    • 変数名:scrollView
  • UIScrollViewの上に乗っているUIImageView

    • 変数名:imageView

 interface

interfaceでUIScrollViewDelegateプロトコルを追加します。

@interface SampleViewController : UIViewController<UIScrollViewDelegate>

 実装

以下のようにプロパティを設定します。
この場合、ズームの最小値が1.0倍で最大値が4.0倍になります。

scrollView.delegate         = self;
scrollView.minimumZoomScale = 1.0;
scrollView.maximumZoomScale = 4.0;

ピンチイン・アウトをした場合の対象となるコンテンツを教えるために以下のメソッドを実装します。
ここで、returnで返すのがUIScrollViewの上に乗っているUIImageViewになります。

 - (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return imageView;
 }

たった上記のコードだけでピンチイン・ピンチアウトができます。

上記以外に以下の3つのメソッドを使うと、色々と処理を追加できます。

//ドラッグが終わった時に呼ばれるメソッド
 - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView  willDecelerate:(BOOL)decelerate {
 }
//画面が静止したときに呼ばれるメソッド
 - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
 }
//ズームが終了した時に呼ばれるメソッド
 - (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale {
 }

広告

関連記事

no image

Androidアプリ開発 -画像を加工してセピア色にしてみる-

* やりたいこと ギャラリーから選んだ画像を加工してセピア色にしたい * ソース ** 画像を取得

記事を読む

no image

複数アカウントでgithubを使う

1つの端末で複数のアカウントを使いたくなったので、その方法を整理してみた。 流れとしては以下のとおり

記事を読む

iPhoneアプリ開発 -UIScrollViewでタッチを取得-

* やりたいこと UIScrollViewでタッチを取得する。 * 方法 通常のUIScrollV

記事を読む

list-normal

jQuery Mobileのリストの見た目をちょっとカスタマイズ -覚書-

jQuery Mobileを使えば簡単にスマートフォン対応できる言えば出来るのですが、少しでもカスタ

記事を読む

no image

Twitterでサービスにログイン -ソーシャルログイン-

* やりたいこと -自身のWebサービスにTwitterIDでログイン(ソーシャルログイン)したい。

記事を読む

Selenium2.0でUIテスト(1) -まずはPHPでやってみる-

久しぶりにSeleniumを触ってみました。 Selenium2.0から色々と変わったみたいで少々

記事を読む

no image

iPhoneアプリ開発 −フォントの変更−

一言:最近、iPhoneアプリの開発のためMacばかり触ってて、Windowsに戻ると混乱します。

記事を読む

スクリーンショット 2012-10-20 14.26.24

iPhoneアプリ開発 −UITabControllerの利用−

* やりたいこと 上にあるように下部にあるタブをタッチしたら別のページを呼び出す。 * 

記事を読む

no image

CakePHP1.3でテストコード(3) -ENUM型が使えない-

cakePHP1.3でのSimpleTestを使ったテストケースの第3回目。 今回は、テーブル構成で

記事を読む

no image

さくらのVPSでJenkins -執事さんとご対面-

さくらのVPSを利用している方は多いかと思います。 私も、自分で遊ぶ用(開発用)として借りてみまし

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑