我正在使用UIStepper
更改显示在UITextField
中的值,并且可以选择在UITextField
中输入该值。
一切正常,但是有不希望有的行为:只能按对象本身的上半部分编辑UITextField
,因为下半部分的触摸被UIStepper
吞没了。
我正在寻找答案,但没有找到答案。我有一些提示。UIStepper
具有2个按钮和1个ImageView
,并且在整个ImageView
中检测到触摸(不可见或不可编辑)。
有任何想法吗?
最佳答案
要解决此问题,很可能需要子类化。您可以重写pointInside:withEvent:
子类中的 UIStepper
并返回NO
,除非严格在步进器的范围内:
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
return CGRectContainsPoint(self.bounds, point);
}