

-(void)ViewDidLoad {
UITapGestureRecognizer *tap =[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismiss:)];
[self.view? addGestureRecognizer:tap];
}
-(void)dismiss:(UITapGestureRecognizer *)tap
{
//獲取當前點擊的位置的坐標
CGPoint point = [tap locationInView:self.view];
NSLog(@"handleSingleTap!pointx:%f,y:%f",point.x,point.y);
//判斷這個坐標點的位置是否在 某個視圖的坐標范圍內(nèi)
BOOL isInView = self.view.frame.size.height -?? self.goodsAttribute.frame.size.height > point.y ? YES :NO;
????? //如果為真說明點擊在這個視圖中
????? if (isInView) {
??????????? [self dismissViewControllerAnimated:YES completion:nil];
???? }
}
/********************方法二*****************************/
-(void)touchesBegan:(NSSet*)touches withEvent:(UIEvent *)event
{
? ? ? ? ? ?//結(jié)束編輯
? ? ? ? ? ?[self.view endEditing:YES];
? ? ? ? ? ?//獲取當前觸摸點的集合
? ? ? ? ? ?UITouch *touch = [touches anyObject];?
? ? ? ? ? ?//獲取當前這個點 在當前視圖的位置
? ? ? ? ? ?CGPoint point = [touch locationInView:self.view];
? ? ? ? ? ?//判斷這個點的位置是否在 某個視圖的坐標范圍內(nèi)
? ? ? ? ? BOOL isIn = CGRectContainsPoint(self.typeMsg.frame, point);
? ? ? ? ? if (!isIn) {
? ? ? ? ? ? ? ? [self dismissViewControllerAnimated:YES completion:nil];
? ? ? ? ? }
}