好吧通常这个问题发生在tableView的scrollView或某种类型的scrollView中,但我有一个"中途延迟"在简单地包含在UIView中的UIButton上。这是我的代码:
UIButton *brightnessUpButton = [UIButton buttonWithType:UIButtonTypeCustom];
[brightnessUpButton setFrame:CGRectMake(260, 0, 60, 144)]; //y:5 height:80
brightnessUpButton.contentEdgeInsets = UIEdgeInsetsMake(0, 0, 50, 0);
UIButton *brightnessDownButton = [[UIButton alloc] initWithFrame:CGRectMake(5, 24, 40, 40)];
[brightnessUpButton setImage:[UIImage imageNamed:@"brightnessUp.png"] forState:UIControlStateNormal];
[brightnessUpButton setImage:[UIImage imageNamed:@"brightnessUpHighlighted.png"] forState:UIControlStateHighlighted];
[brightnessDownButton setImage:[UIImage imageNamed:@"brightnessDown.png"] forState:UIControlStateNormal];
[luxView addSubview:brightnessUpButton];
[luxView addSubview:brightnessDownButton];
目前问题出在brightnessUpButton
。正如你所看到的,我除了设置框架和内容Insets之外什么也没做。所以问题是当你点击按钮。如果单击下方按钮中图像的位置,则按钮的突出显示会延迟1-2秒。如果单击图像,则会立即突出显示,当您单击UIButton图像上方时,会立即突出显示。
这种行为对我没有任何意义,因为UIButton被添加到UIView,而不是任何类型的scrollView,突出显示仅在按钮的一半时间内立即发生。我试过了:
1)将imageEdgeInsets和contentEdgeInsets设置为适当的
2)使用View调试器查看是否有一些额外的对象干扰了按钮 - 结果是NONE,UIView存在于UIView之上,就是全部。
什么可能导致这种奇怪的行为?