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

公開日: : iPhone, IT, Mac


 やりたいこと

UIScrollViewでタッチを取得する。

 方法

通常のUIScrollViewでは、タッチを取得することができません。

タッチを取得するには、以下の方法で可能になります。

  • UIScrollViewのカテゴリを作成する。
  • UIScrollViewのサブクラスを作成する。

カテゴリを作成する方法だと、UIScrollViewの全てに対応してしまいます。
1つのViewControllerに複数のUIScrollViewを利用しているので、今回はサブクラスを作成する方法を採用しました。

 実装例

サブクラスの作成としてCustomScrollView.h/CustomScrollView.mを実装します。

 CustomScrollView.h

#import <UIKit/UIKit.h>
@interface CustomScrollView : UIScrollView<UIScrollViewDelegate>
@end

 CustomScrollView.m

 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
 //タッチした時の処理
 }
 - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
 //タッチしたまま移動させた時の処理
 }
 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
 //タッチを終えた時の処理
 }
@end

touchesBegan、touchesMoved、touchesEndedをオーバーライドします。
必要な内容は上記の各メソッドに記述します。

 利用例

InterfaceBuilderを利用する場合は、設置したUIScrollViewのclassをCustomScrollViewに変更します。
スクリーンショット 2013-01-05 12.11.04

hファイルと関連付けると以下のようになります。

@property (weak, nonatomic) IBOutlet CustomScrollView *scrollView;

これで、UIScrollViewでタッチを取得することができます。

広告

関連記事

no image

iPhoneアプリ開発 −iOS6からの「写真」へのアクセス問題−

写真を扱うアプリを開発している際に問題になったこと。 ※結構前の話を今更まとめてみる。 * 写真へ

記事を読む

no image

iPhoneアプリ開発 −複数前の画面に戻る−

* やりたいこと ある画面から別の画面に遷移したい。 -1つ前の画面に戻りたい。 -2つ前の画面に戻

記事を読む

no image

Capistranoで簡単デプロイ -開発用サーバー編-

cakePHPを使って開発しているサービス()で、リリース周りを楽にしたいなと思いCapistran

記事を読む

no image

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

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

記事を読む

no image

Facebookがちょっとコワイ vol.1 -自分の情報をコントロールできない-

Facebookの最近の広がり方などを見ていて、少々不安を感じたので思ったことをつらつらと書いてみま

記事を読む

MacでRuby on Railsの開発環境構築 -Apacheで動かす-

* 環境 -MacBook Air MD231J/A -Mac OS X バージョン10.8.2

記事を読む

Jenkins + DeployGate(1) -DeployGateでAndroidアプリ開発-

TestFlight for Androidが発表されて1ヶ月ぐらいたちますが、音沙汰がありません。

記事を読む

no image

FacebookページをFacebookアプリで表示 -iPhoneアプリ編-

* やりたいこと Facebookアプリを入れている人には、アプリでFacebookページで表示。

記事を読む

datebox-date

jQueryMobileでカレンダー表示 -DateBoxプラグインの利用-

スマートフォン対応をしているとカレンダーの表示の仕方をスマートフォンらしくしたいことがあると思います

記事を読む

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

今までのDeployGate - -[http://pplace.jp/2013/03/1398

記事を読む

広告

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 ↑