我的iPhone应用程序上需要一个按钮,只有当用户触摸到框架区域内时才触发该事件。
据我了解UIControlEventTouchUpInside
应该这样做,而且大多数情况下它都会这样做:如果我将手指放在离屏幕足够远的屏幕上,然后只提起它,事件就不会发生。触发(这是我正在寻找的行为。)
但如果我在框架外举起手指,无论如何都会触发事件。有没有办法防止它?
UIButton *selectPlan = [UIButton buttonWithType:UIButtonTypeRoundedRect];
selectPlan.frame = CGRectMake(self.view.bounds.size.width/2-buttonWidthHeight/2, self.view.bounds.size.height/2-buttonWidthHeight/2 + 43, buttonWidthHeight, buttonWidthHeight);
[selectPlan addTarget:self action:@selector(checkIfPlansExistAndFindBestPlan) forControlEvents:UIControlEventTouchUpInside];
[selectPlan setTitle:@"Select Plan" forState:UIControlStateNormal];
[self.view addSubview:selectPlan];
答案 0 :(得分:0)
这是UIButton的默认属性。你无法改变它。
从我理解的按钮名称,您有计划,并在使用时选择计划,您想要找到单击的按钮。
我会说更准确地使用touchesBegan
和touchesEnd
事件。
以下是这些活动的示例链接。
http://www.techotopia.com/index.php/An_Example_iOS_5_iPhone_Touch,_Multitouch_and_Tap_Application