1

nosの画像ビューを使いたいです。特定の画像ビューを 1 回タップすると、スクロール ビューで画像ビューが表示されます。

4

4 に答える 4

1

ボタンを作成し、画像を背景として設定します。ボタンを作成している間、次のようなタグを設定できます

button.tag=yourtag;//your tag integer value 
[button addTarget:self action:@selector(buttonTouched:) forControlEvents:UIControlEventTouchDown];

  [button setBackgroundImage:[UIImage imageNamed:@"img.png"] forState:UIControlStateNormal];

この関数をclssに実装します

 - (void)buttonTouched:(UIButton *)sender 
   {
NSLog(@"touched %i",[sender tag]);
   }    

特定のボタンをタップしている間、この関数が呼び出されます。

于 2011-02-22T11:06:05.050 に答える
1

ボタンの代わりに画像を使用することに固執する場合は、Gesture Recognizer を使用できます。imageView を作成し、その userInteraction を有効にします

UIImageView *testImageView              =   [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"someImage"]];
testImageView.frame                     =   CGRectMake(30.0,30.0,60.0,40.0);
testImageView.tag                       =   30;
testImageView.userInteractionEnabled    =   TRUE;
[tempPlotView addSubview: testImageView];
[testImageView release];    

次に、ジェスチャ Recognizer オブジェクトを割り当てて、imageView に追加します...

UITapGestureRecognizer *testGesture =   [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singletap:)];
[testGesture setNumberOfTapsRequired:1];
[testImageView addGestureRecognizer: testGesture];
[testGesture     release];

セレクター「singleTap」で、アクションが何であれ実行できます..

-(void)singleTap:(UIImageView*)sender{
    if(sender.tag == 30){
        //do your stuff here...
    }
}

これが助けになることを願っています...乾杯....

于 2011-02-22T12:36:19.283 に答える
1

画像ビューを使用する代わりに、コンテンツとして画像ビューを含む UIButton を使用できます。

そうすれば、ボタンへの参照を使用して特定の画像がタップされたときに、コールバックを取得できます。そこから、タップされたもののタグを取得できるはずです!

これが役に立てば幸いです。

于 2011-02-22T11:03:26.187 に答える
0

ニックが提案したことに従って行うことができます。または、imageview のサブクラスを作成することもできます。フレームとタグを設定します。このカスタム クラスの touchesEnded メソッドでは、そのタグに基づいてどのイメージビューであるかを見つけることができます。

于 2011-02-22T12:34:57.380 に答える