点击/单击查看操作Xcode

时间:2012-07-08 10:07:57

标签: iphone objective-c ios xcode ios5

视图有Touch Up Inside吗? 我想在用户点击或点击视图时调用操作。 目前我在这个视图上使用了一个隐藏按钮,但这不是一个聪明的方法。

感谢任何帮助:)

3 个答案:

答案 0 :(得分:8)

你也可以在UIView上使用addGestureRecognizer方法,如下所示:

// In some View controller
UITapGestureRecognizer *tapGR;
tapGR = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)] autorelease];
tapGR.numberOfTapsRequired = 1;
[myUIView addGestureRecognizer:tapGR];

// Add a delegate method to handle the tap and do something with it.
-(void)handleTap:(UITapGestureRecognizer *)sender
{
    if (sender.state == UIGestureRecognizerStateEnded) {
        // handling code
    }
}

答案 1 :(得分:4)

我不明白为什么使用隐藏按钮不是一种聪明的方式......这是Apple本身建议的方式,我认为它很聪明,目前更好的方式......

答案 2 :(得分:0)

如果您想要在没有按钮的情况下检测屏幕上任何位置的触摸,请使用- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event。你也可以找到触摸的位置:

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch = [touches anyObject];   
    CGPoint *tLocation = [touch locationInView:self.view];
}

注意:touchesEnded被称为每一个时间视图被点按,因此每次用户触摸屏幕时,上述tLocation都会更改。