0

我在 UIview 中添加了 UIScrollView,并在滚动视图中添加了一个按钮,当我按下该按钮时,它会在 uiscrollview 中生成表格。现在我的问题是,当用户触摸滚动视图中的任何位置时,我想删除该表格。我尝试使用 touches started 方法,但对于滚动视图它不起作用。如果有人知道,请帮助我

提前致谢

4

2 回答 2

0

touchesBegan除非您子类化,否则方法将不起作用。

UITapGestureRecognizer是您的解决方案。您可以按如下方式使用它。

...

UITapGestureRecognizer *tapRecognizer=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapScrollView)];
[scrollView addRecognizer:tapRecognizer];
[tapRecognizer release];  //If not ARC

-(void)didTapScrollView
{
    [tableView removeFromSuperview];
}
于 2012-11-27T21:05:45.180 回答
0

如果用户点击按钮,滚动视图将不会接收到触摸。相反,创建如下所示的方法并将其添加为按钮的目标。

- (void)hideTable {
    [yourTableView setHidden:YES];
}

创建按钮时,或者viewDidLoad如果它是从 nib 加载的,请将方法添加为按钮的目标:

[yourButton addTarget:self action:@selector(hideTable) 
    forControlEvents:UIControlEventTouchUpInside];
于 2012-11-27T17:15:02.567 回答