我在UIview中添加了UIScrollView,我在滚动视图中添加了一个按钮,当我按下该按钮时,它在uiscrollview内生成表。现在我的问题是当用户触摸到内部的任何地方时我想删除该表scrollview.I尝试使用touches开始方法,但滚动视图它不工作。如果有人知道请帮帮我
先谢谢
答案 0 :(得分:0)
如果用户点击按钮,滚动视图将不会接收到触摸。而是创建一个类似下面的方法,并将其添加为按钮的目标。
- (void)hideTable {
[yourTableView setHidden:YES];
}
创建按钮时,或者viewDidLoad
如果是从笔尖加载按钮,请将方法添加为按钮的目标:
[yourButton addTarget:self action:@selector(hideTable)
forControlEvents:UIControlEventTouchUpInside];
答案 1 :(得分:0)
touchesBegan
方法将无效。
UITapGestureRecognizer
是您的解决方案。您可以按如下方式使用它。
...
UITapGestureRecognizer *tapRecognizer=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapScrollView)];
[scrollView addRecognizer:tapRecognizer];
[tapRecognizer release]; //If not ARC
-(void)didTapScrollView
{
[tableView removeFromSuperview];
}