如何识别UILongPressGestureRecognizer后视图上的按钮被按下

时间:2011-05-20 17:07:23

标签: iphone uikit uibutton gesture

我希望在frame被解雇后捕获tag或某些属性(在这种情况下为UIButton的一个框架或UILongPressGestureRecognizer)。

这是我的代码:

...create the uibutton (btn instance)
//add gesture to button 
UILongPressGestureRecognizer *twoSecPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(setProductToButton:)];
            [twoSecPress setMinimumPressDuration:2];
            [btn addGestureRecognizer:twoSecPress];
            [twoSecPress release];
btn.tag=INDEX;

这是方法:

    - (void)setProductToButton:(UILongPressGestureRecognizer *)recognizer {
          if (recognizer.state == UIGestureRecognizerStateBegan) {
              for (UIButton *selButt in [self.scrollView subviews]) {
                  if(selButt.selected){//THIS IS ALWAYS FALSE
                     NSLog(@"%d",selButt.tag);
          } 
       }
   }
 }

似乎按钮的状态仍然没有改变。 有什么建议吗?

无论如何,有一些方法可以识别最后一个被点击/选择的元素是什么?

提前致谢。

1 个答案:

答案 0 :(得分:4)

setProductToButton方法中,recognizer.view属性是按下的按钮。