我的应用显示UIView
,其中包含四个UIButtons
,其中一个删除UIView
,但我还需要删除UIView
,包括所有包含按钮当用户点击它之外。
这是我使用按钮操作删除UIView
的方法:
-(IBAction)closeSideTasks: (id)sender
{
UIView * backgroundView = (UIView *)[self.view viewWithTag:7];
[backgroundView removeFromSuperview];
}
欢迎任何帮助或建议。
更多信息:
这是场景:有一个表格视图。如果用户在一行上从左向右滑动,则UIView将显示在视图的右侧。点击其中的每个按钮并执行每个按钮操作后,UIView * newView将被删除。但可能是用户没有点击任何按钮,UIView仍然在视图上。然后,我想要实现的是一种方式,如果用户点击它之外的任何地方,UIView * newView被移除,以防止它始终保持在视图上...
答案 0 :(得分:1)
结帐UITapGestureRecognizer
。
示例:
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] init];
tapGesture.delegate = self;
tapGesture.numberOfTapsRequired = 1;
tapGesture.numberOfTouchesRequired = 1;
[tapGesture addTarget:self action:@selector(tapChangeImage)];
[self.profileImageView addGestureRecognizer:tapGesture];
现在添加操作方法:
#pragma tap gestures
-(void)tapChangeImage{
// Remove view from superview!
}
答案 1 :(得分:0)
放一个大按钮,全屏,没有图形,没有文字和清晰的背景。有其行动也删除背景