カスタムビュー作った以上はタッチ対応でしょ。
 ちゅ~ことで「iPhone OS プログラミングガイド」だ。当然イベント処理の章で説明されてます。
 それによると

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event

をUIViewを継承したクラス(今回ならFlipsideView)に加えればいいみたいっす。

 touchesEnded

iPhoneアプリ開発、その(31)の棒取りゲームでちょっとだけ経験済みだけどね。座標とかドラッグは初体験。
 今回は実験的に、touchesBeganでクリックされた位置を記憶してtouchesMovedで最初の位置からの距離をlevel=0.0~1.0に変換して設定するということにします。
 で、例によってサンプルソースですが

 Touches

てのがありました。で、この中のtouchesBeganメソッドなんかで

for (UITouch *touch in touches) {

て、なんざましょ。ま~雰囲気的にわかるけど...
 前回紹介した「Objective-C 2.0プログラミング言語」を調べると高速列挙の章にfor…in機能として紹介されてました。

 touchesに含まれる不特定数のUITouchを順番にtouchに取り出して最後を取り出すまでループする

 そんな感じ。便利やわ~。
 Objective-C 2.0限定の超マイナー機能だけど。
 でもって
 
  [touch locationInView:self]

で自分のビュー上での位置がとれます。ということでFlipsideView.h側に
 
 CGPoint clickPos;

を定義したらFlipsideView.mにtouchesBegan~touchesCancelledを実装していきます。
 
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
for (UITouch *touch in touches) {
clickPos = [touch locationInView:self];
break;
}
}

 今回は複数の指に対応しないので一つ目でいきなりbreakするっす。
 で、touchesMoved側で同じようにしてドラッグ中の座標との距離計算。距離計算は中学生の数学なので説明しない。setNeedsDisplayも前に説明したのでパスね。ブログ内検索してちょ。
 
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
for (UITouch *touch in touches){
CGPoint pt = [touch locationInView:self];
pt.x -= clickPos.x;
pt.y -= clickPos.y;
double d = pt.x * pt.x + pt.y * pt.y;
d = sqrt(d);
level = d / 100.0;
if (level > 1.0)
level = 1.0;
[self setNeedsDisplay];
break;
}
}

touchesEnded、touchesCancelledは今回は用がないので空のまま。
 
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
{
}

 ついでに今、気づいたんだけど、画像を表示したので隠れてしまった
 
[str drawAtPoint:CGPointMake(0, 0) withFont:font];

を、画像の後に移動することで復活させる。
 実験的に文章を斜めに、縦長文字で表示してみました。

テン・シー・シー-fig.1
ロッケンローラぽい?

 これが例のCTMてやつなんだけど、これは次回。クォーツの世界にヒントがあると思われ。

 どこでもいいからクリックしてそのままドラッグするとlevelが0.0~1.0の範囲で変わります。
------------
サンプルプロジェクト:Chimpanzee-20.zip